HOJ 1008 How many N

来源:互联网 发布:windows xp 安装盘 编辑:程序博客网 时间:2024/05/17 21:07

Time limit : 15 sec Memory limit : 32 M


Find a minimal interger K which is merely comprised of N and can be divided by M.

For example,11 is the minimal number that and be divided by 11, and it is comprised of two '1's, and 111111 can be divided by 13 which is comprised of six '1's.


Input

On each line of input , there will be two positive integer, N and M. N is a digit number, M is no more than 10000.

Output

On each single line, output the number of N, if no such K, output zero.

Sample Input
1 51 111 13
Sample Output
026

Solution:

int main( ){    int n, m, t, f[ 10000 ], i, count;    while ( scanf("%d %d", &n, &m) == 2 )    {        count = t = 0;        for ( i = 0; i < m; i++ )            f[ i ] = 0;        while ( !f[ t ] )        {            count++;            f[ t ] = 1;            t = ( t * 10 + n ) % m;        }       if ( !t )            printf("%d\n", count);       else            printf("0\n");    }    return 0;}