标签:
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?
Input
A ?le of integers at one integer per line.
Output
Each output line gives the smallest integer x > 0
such that p =
∑x−1
i=0 1×10i = a×b, where a is the
corresponding input integer, and b is an integer
greater than zero.
Sample Input
3
7
9901
Sample Output
3
6
12
题意:做少长度的 111.....使得 其能整除n
题解: 不断乘,不断取于就好了
//meek #include<bits/stdc++.h> #include <iostream> #include <cstdio> #include <cmath> #include <string> #include <cstring> #include <algorithm> #include<map> #include<queue> using namespace std ; typedef long long ll; #define mem(a) memset(a,0,sizeof(a)) #define pb push_back #define fi first #define se second #define MP make_pair const int N=550; const ll INF = 1ll<<61; const int inf = 1000000007; const int MOD = 2000000011; int main() { int n; while(scanf("%d",&n)!=EOF) { int ans = 1; int tmp = 1 % n; while( tmp ) { tmp = (tmp * 10 + 1) % n; ans++; } printf("%d\n", ans); } return 0; }
标签:
原文地址:http://www.cnblogs.com/zxhl/p/5104032.html