UVA 10127- Ones 数学

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 file 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;
}
daima

 

posted @ 2016-01-05 22:47  meekyan  阅读(224)  评论(0编辑  收藏  举报