#CCF1031. 循环

循环

题目描述

乐乐是一个聪明而又勤奋好学的孩子。 他总喜欢探求事物的规律。 一天,他突然对数的正整数次幂产生了兴趣。 众所周知,22 的正整数次幂最后一位数总是不断的在重复 24862486......2,4,8,6,2,4,8,6...... 我们说 22 的正整数次幂最后一位的循环长度是 44(实际上 44 的倍数都可以说是循环长度,但我们只考虑最小的循环长度)。 类似的,其余的数字的正整数次幂最后一位数也有类似的循环现象:

下载.png

这时乐乐的问题就出来了:是不是只有最后一位才有这样的循环呢?对于一个整数 n 的正整数次幂来说,它的后 kk 位是否会发生循环?如果循环的话,循环长度是多少呢? 注意: 1.如果 nn 的某个正整数次幂的位数不足 kk,那么不足的高位看做是 00。 2.如果循环长度是 LL,那么说明对于任意的正整数 aannaa 次幂和 a+La+L 次幂的最后 kk 位都相同。

输入

输入文件只有一行,包含两个整数 nnkknnkk 之间用一个空格隔开,表示要求 nn 的正整数次幂的最后 kk 位的循环长度。

输出

输出文件包括一行,这一行只包含一个整数,表示循环长度。 如果循环不存在,输出 1−1

32 2
4

提示

1n10100,1≤n≤10​^100​, 1k1001≤k≤100