#include <iostream.h> #include <string.h> #include <fstream.h> ifstream f("c.in"); #define cin f int main() { char a[61],b[61]; char c[61][61]; while(cin>>a) { int pos; int i,j,k; int iw=0; int flag=0; for(pos=0;pos<strlen(a);pos++) { for(i=0;i<strlen(a)-pos;i++) c[pos][i]=a[i+pos]; for(i=strlen(a)-pos;i<strlen(a);i++) c[pos][i]=a[i-strlen(a)+pos]; c[pos][strlen(a)]='\0'; } for(i=1;i<=strlen(a);i++) { iw=0; int flag2=0; for(j=strlen(a)-1;j>=0;j--) { int k=(a[j]-'0')*i+iw; b[j]=k%10+'0'; iw=k/10; } b[strlen(a)]='\0'; int test=0; for(j=0;j<strlen(a);j++) { if(strcmp(c[j],b)==0) { flag2=1; break; } } if(flag2==0) { flag=1; goto loop; } } loop : if(flag==1) cout<<a<<" is not cyclic"<<endl; else cout<<a<<" is cyclic"<<endl; } }

评论