CODE
#include <bits/stdc++.h>
using namespace std;
string add(string s)
{
string q = s;
reverse(s.begin(),s.end());
int len = q.length();
int add=0;
for(int i = len-1;i>=0;i--)
{
int x;
x = s[i]-'0'+q[i]-'0';
q[i]= (x+add)%10+'0';
if(x+add>=10)
add=1;
else
add = 0 ;
}
if(add)
q.insert(0,"1");
return q;
}
int main()
{
string s;
int maxtime;
cin>>s>>maxtime;
string q = s;
reverse(s.begin(),s.end());
if(q==s)
cout<<q<<endl<<0;
else{
int k=0;
while(k<maxtime)
{
s=add(q);
q = s;
k++;
reverse(s.begin(),s.end());
if(q==s)
{
break;
}
}
cout<<q<<endl<<k;
}
return 0;
}
心得
用数组最后一个样例就是过不了…开到200了应该够了呀…哪里的运算没做好。。
不过库函数是真好用+方便。。