好久没有刷题了。。。今天一来就碰到个不好解决的,不,应该是自己实力太弱了……
此题光是理解题意就用了不少时间,理解了以后对于如何判断1到MOD-1的数字全出现又让我恼火了一阵子。。。
#include <stdio.h>
#include <math.h>
int main(){
int s, m, i;
while(scanf("%d%d",&s,&m) != EOF){
int a[100001] = {0};
int seed = 0;
while(!a[seed]){
a[seed] = 1;
seed = (seed + s) % m;
}
for(i = 0; i < m; i++){
if(a[i] == 0){
printf("%10d%10d Bad Choice\n\n",s,m);
break;
}
}
if(i == m){
printf("%10d%10d Good Choice\n\n",s,m);
}
}
return 0;
}