HOJ-1006

这题刚一看,卧槽,数论??同余方程,费马小定理,又要召唤欧拉大神犇??

再一看。。。是我想太多。

算过的人说答案只有0, 1, 2, Impossible四种可能。

管他呢,循环最多六十次(鸽笼原理),直接暴力妥妥的。

 1 #include<cstdio>
 2 
 3 int main(void)
 4 {
 5   int s, d;
 6   int i;
 7   scanf("%d%d", &s, &d);
 8   while((s > 0) || (d > 0)) {
 9     d++;
10     for(i = 0; i < 60; ++i){
11       if(s == 0) {
12     printf("%d\n", i);
13         break;
14       }
15       s = s * d % 60;
16     }
17     if(i == 60) printf("Impossible\n");
18     scanf("%d%d", &s, &d);
19   }
20   return 0;
21 }

1.以后像题目中要是说s=d=0是结束的话,就老老实实判断两个吧(~ ̄▽ ̄)~,开始只写了个s>0,然而没想到数据真的有坑爹的s=0,d≠0存在。。。

posted on 2015-10-11 11:15  AlanXue  阅读(163)  评论(0编辑  收藏  举报

导航