又是一道用欧拉定理解的题..嗯,关键还是要建好方程,注意一些化简技巧 题目大意: 给定一个由 p / q 生成的循环小数,求此循环小数在二进制表示下的最小循环节以及不是循环节的前缀 思路: 小数化为二进制,应该乘2取余, 设从小数的第x位开始有长度为y的循环节, 先把 p/q 化为最简分数,此时p,q互质 则应该满足 同余方程 p*2^x=p*2^(x+y) mod q 整理一下可得 q | p*2^x*(2^y - 1) 由于 p,q互质,则q | 2^x*(2^y - 1) 此时 由于 2…