#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