#P3358. Period of an Infinite Binary Expansion
Period of an Infinite Binary Expansion
题目描述
设为有理数的小数部分的二进制表示。假设是循环的,那么我们可以将其写为
{x} = 0.a1a2...ar(ar+1ar+2...ar+s)w
其中和为整数,满足且。此外,表示的一个无限重复的二进制子序列。
子序列被称为的前周期,而则是的周期。
若选择和尽可能小,则称为最小前周期,称为的最小周期。
例如,,其中是的一个前周期,是一个周期。
然而,我们也可以将写为,此时是最小前周期,是的最小周期。
的最小周期从二进制小数点右侧第2位开始,最小周期的长度为4。
编写一个程序,找出小于1的正有理数的小数部分在二进制表示下的最小周期的第一个比特的位置,以及最小周期的长度,其中前周期也取最小值。
输入
每一行是一个测试用例,表示一个有理数,其中和为整数,且,。
输出
每一行对应一个测试用例,输出一个数对,第一个数是最小周期的第一个比特的位置,第二个数是该有理数的最小周期的长度。
输入样例 1
1/10
1/5
101/120
121/1472
输出样例 1
Case #1: 2,4
Case #2: 1,4
Case #3: 4,4
Case #4: 7,11
来源
Manila 2006