1047.txt
来自「北大ACM题目例程 详细的解答过程 程序实现 算法分析」· 文本 代码 · 共 52 行
TXT
52 行
#include"iostream.h"
#include"string.h"
char w[100];
int m[100];
int sign[100];
int cheng(int n,int l)
{int temp=0,i;
for(i=l-1;i>=0;i--)
{m[i]=w[i]*n+temp;
temp=m[i]/10;
m[i]=m[i]%10;
}
if(temp)return 0;
else return 1;
}
int main()
{int n,i,j,k;
while(1)
{cin>>w;if(cin.fail())break;
n=strlen(w);
for(i=0;i<n;i++)w[i]-='0';
for(i=1;i<=n;i++)
{if(!cheng(i,n))break;
// cout<<i<<" "<<n<<endl;
// for(k=0;k<n;k++)cout<<char(m[k]+'0');
// cout<<"->"<<endl;
for(j=0;j<n;j++)sign[j]=0;
for(j=0;j<n;j++)
for(k=0;k<n;k++)
if(!sign[k]&&w[k]==m[j]){sign[k]=1;break;}
for(j=0;j<n;j++)if(sign[j]!=1)break;
if(j<n)break;
}
for(k=0;k<n;k++)w[k]+='0';
if(i<=n)cout<<w<<" is not cyclic\n";
else cout<<w<<" is cyclic\n";
}
return 1;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?