http://acm.hit.edu.cn/judge/show.php?Proid=1008 #include <cstdio> #include <cstring> const int MAX = 10240; const int ELE[] = { 2, 4, 5, 8, 10 }; int main() { bool visited[MAX]; int i, a, b; while(scanf("%d %d", &a, &b) != EOF) { bool quick = false; for(i = 0; i < 5; i++) if(b % ELE[i] == 0 && a % ELE[i] != 0) { quick = true; break; } if(quick) { printf("0/n"); continue; } int n = 0; memset(visited, false, sizeof(visited)); for(i = 1; true; i++) { n = (10*n+a) % b; if(n == 0) { printf("%d/n", i); break; } else if(visited[n] || i >= b) { printf("0/n"); break; } else visited[n] = true; } } return 0; }