1.链接地址
https://vjudge.net/problem/POJ-2551
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?
输入样例
3 7 9901
输出样例
3 6 12
3.解题思路
题意即存在一个只由1组成的数,可以整除给出的n。注意不要超出位数
4.算法实现源代码
#include<cstdio> #include<cstdlib> #include<iostream> using namespace std; int main() { int i,j,n; bool f; int s,t=0; while(scanf("%d",&n)!=EOF) { f=false; t=s=1; t=t%n; while(t!=0) { t=(t*10%n+1)%n; s++; } printf("%d\n",s); } return 0; }