#abc235d. [abc235_d]Multiply and Rotate

[abc235_d]Multiply and Rotate

题目描述

我们有一个正整数 aa。此外,还有一个黑板上的数字,以十进制表示。
xx 是黑板上的数字。高桥可以通过以下操作来改变这个数字。

  • 擦除 xx 并将 xx 乘以 aa,结果仍用十进制表示。
  • xx 视为字符串,将最右边的数字移到开头。
    只有当 x10x \geq 10xx 不可被 1010 整除时才能执行此操作。

例如,当 a=2,x=123a = 2, x = 123 时,高桥可以执行以下操作之一。

  • 擦除 xx 并将 x×a=123×2=246x \times a = 123 \times 2 = 246 写入。
  • xx 视为字符串,并将 123 的最右边的数字 3 移到开头,将数字从 123123 改为 312312

黑板上的数字最初为 11。将黑板上的数字改为 NN 的最小操作次数是多少?如果无法将数字改为 NN,则输出 1-1

约束条件

  • 2a<1062 \leq a < 10^6
  • 2N<1062 \leq N < 10^6
  • 输入中的所有值都是整数。

输入

从标准输入读入数据,输入的格式如下:

aa NN

输出

打印答案。


示例输入 1

3 72

示例输出 1

4

我们可以通过四次操作将黑板上的数字从 11 改为 7272,如下所示:

  • 执行第一种操作:131 \to 3
  • 执行第一种操作:393 \to 9
  • 执行第一种操作:9279 \to 27
  • 执行第二种操作:277227 \to 72

无法在三次或更少的操作中达到 7272,因此答案是 44


示例输入 2

2 5

示例输出 2

-1

无法将黑板上的数字改为 55


示例输入 3

2 611

示例输出 3

12

有一种方法可以在 1212 次操作内将黑板上的数字改为 611611:$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