📄 1282 回文数猜想.cpp
字号:
#include <cstdio>
#include <string>
using namespace std;
char num[31];
char pro[101][31];
inline int plusme(char num[],int len)
{
int i,inc,j,k;
char t,re[31];
inc=0;i=0;j=0;
while(num[i]!='\0')
i++;
while(i--)
re[j++]=num[i];
re[j]=0;
for(i=0;i<len;i++)
{
t=(num[i]-'0')+re[i]+inc;
inc=0;
while(t>'9')
{
inc++;
t=t-'9'+'0'-1;
}
re[i]=t;
}
if(inc!=0)
re[i++]=inc+'0';
re[i]=0;
k=i;j=0;
while(i--)
num[j++]=re[i];
num[j]=0;
return k;
}
int main()
{
int i,j,len,step;
bool flag;
while( scanf("%s",num)!=EOF )
{
step=0;
strcpy(pro[0],num);
len=strlen(num);
do
{
i=0;j=len-1;
flag=true;
while(j>i)
{
if(num[i]!=num[j])
{ flag=false;break;}
i++;j--;
}
if(! flag)
{
len=plusme(num,len);
step++;
strcpy(pro[step],num);
//printf("%s\n",num);
}
}while(! flag);
printf("%d\n%s",step,pro[0]);
for(i=1;i<=step;i++)
printf("--->%s",pro[i]);
printf("\n");
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -