poj 1504 Adding Reversed Numbers
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n,i,j;
string str1,str2;
cin>>n;
while(n--)
{
cin>>str1>>str2;
if(str1.size()<str2.size())
swap(str1,str2);
int t=0;
for(i=0;i<str2.size();++i)
if(str1[i]+str2[i]-'0'+t>57)
str1[i]=str1[i]+str2[i]-'0'+t-10,t=1;
else
str1[i]=str1[i]+str2[i]-'0'+t,t=0;
if(t==1)
for(i=str2.size();t&&i<str1.size();++i)
{
str1[i]+=1;
if(str1[i]>57)
t=1,str1[i]='0';
else
t=0;
}
if(t==1)
str1.push_back('1');
for(i=0;i<str1.size();++i)
if(str1[i]!='0')
break;
for(j=i;j<str1.size();++j)
cout<<str1[j];
cout<<endl;
}
return 0;
}