how many ones?
时间限制:
3000 ms | 内存限制:
65535 KB
难度:
2
-
描述
-
Given any integer 0 <= n <= 10000 not divisible by 2 or 5, some multiple of n is a number which in decimal notation is a sequence of 1's. How many digits are in the smallest such a multiple of n?
-
输入
- Each line contains a number n. 输出
- Output the number of digits. 样例输入
-
3 7 9901
样例输出
-
3 6 12
来源
- Waterloo local 2001.06.02 上传者
-
苗栋栋
/* 悲剧,总是被叫做水题的基础题虐,,,基础差,死的难看。。。 Time:2014-12-7 14:15 */ #include<cstdio> #include<cstring> int main(){ int sum,num; int n; while(scanf("%d",&n)!=EOF){ sum=num=0; while(1){ sum++; num=(num*10+1)%n; //如果是2或者5的话,找不着,每次对n取模,突然想起离散数学里边的知识的,就是忘了什么东东来着 貌似是循环群来吧 if(num==0) break; } printf("%d\n",sum); } return 0; }