#abc235d. [abc235_d]Multiply and Rotate
[abc235_d]Multiply and Rotate
問題文
正の整数 があります。また、黒板に 個の数が 進表記で書かれています。
黒板に現在書かれている数を としたとき、高橋君は次のいずれかの操作を行い、黒板に書かれている数を変化させることができます。
- を消し、 を 倍した数を 進表記で新たに書きこむ。
- を文字列とみなして、列の末尾の数字を文字列の先頭に移動させる。
ただし、この操作は かつ が で割り切れないときにしか行えない。
たとえば であるとき、高橋君は次のいずれかの操作を行うことができます。
- を消して、 を新たに書きこむ。
- を文字列とみなして、
123
の末尾の数字である3
を先頭に移動させる。黒板に書かれている数は から に変化する。
はじめ、黒板には が書かれています。書かれている数を に変化させるには最小で何回の操作が必要ですか?ただし、どのように操作しても書かれている数を に変化させられない場合は を出力してください。
制約
- 入力はすべて整数である。
入力
入力は以下の形式で標準入力から与えられる。
出力
答えを出力せよ。
入力例 1
3 72
出力例 1
4
以下に説明する操作を行うことで、 黒板に書かれている数を 回で から に変化させることができます。
- つ目の操作を行う。黒板に書かれている数は に変わる。
- つ目の操作を行う。黒板に書かれている数は に変わる。
- つ目の操作を行う。黒板に書かれている数は に変わる。
- つ目の操作を行う。黒板に書かれている数は に変わる。
回以下の操作で に変化させることはできないため、答えは になります。
入力例 2
2 5
出力例 2
-1
どのように操作しても黒板に書かれている数を に変化させることはできません。
入力例 3
2 611
出力例 3
12
適切に操作を選ぶことで、 $1 \\to 2 \\to 4 \\to 8 \\to 16 \\to 32 \\to 64 \\to 46 \\to 92 \\to 29 \\to 58 \\to 116 \\to 611$ と 回の操作で黒板に書かれている数を に変化させることができ、これが最小です。
入力例 4
2 767090
出力例 4
111