poj1047 Round and Round We Go
5272 ワード
1 #include<stdio.h>
2 #include<string.h>
3 int main()
4 {
5 char s[65],b[65],str[60][65];
6 int i,k,t,c,len;
7 bool flag;
8 while(~scanf("%s",s)){
9 len=strlen(s);
10 for(i=0;i<len;++i){
11 strcpy(str[i],s+i);
12 strncat(str[i],s,i);
13 }
14 for(k=2;k<=len;++k){
15 memset(b,0,sizeof(b));
16 for(b[len]=c=0,i=len-1;i>=0;--i){
17 t=(s[i]-'0')*k+c;
18 b[i]=t%10+'0';
19 c=t/10;
20 }
21 if(c) break;
22 for(flag=i=0;i<len;++i)
23 if(!strcmp(b,str[i])){
24 flag=1;
25 break;
26 }
27 if(!flag) break;
28 }
29 if(k>len) printf("%s is cyclic
",s);
30 else printf("%s is not cyclic
",s);
31 }
32 return 0;
33 }
//初めて8行目に提出した『~』を書くのを忘れた!!結局カップは半日でした!!気をつけてね!