我觉得我是真的被输出格式打败了
原问题链接:我的代码
程序代码:
#include<iostream>
#include<string>
using namespace std;
string AplusB(string a,string b);
int main()
{
int count;
cin>>count;
int i=1;
while (count--)
{
string a,b;
cin>>a>>b;
cout<<"Case "<<i++<<":"<<endl<<a<<"+"<<b<<"="<<AplusB(a,b);
if(count)
cout<<endl<<endl;
/*else
cout<<endl;*/
}
return 0;
}
string AplusB(string a,string b)
{
int decadeNum=0;
int unitNum=0;
int pA=a.length()-1;
int pB=b.length()-1;
string retStr="";
int num1,num2;
while ((pA>=0)&&(pB>=0))
{
num1=a[pA--]-48;
num2=b[pB--]-48;
int tmpNum=num1+num2+decadeNum;
decadeNum=tmpNum/10;
unitNum=tmpNum%10;
retStr=(char)(unitNum+48)+retStr;
}
num1=0;
while ((pA>=0)||(pB>=0))
{
if(pA<0)
{
num2=b[pB--]-48;
}
else
{
num2=a[pA--]-48;
}
decadeNum=(num1+num2+decadeNum)/10;
unitNum=(num1+num2+decadeNum)%10;
retStr=(char)(unitNum+48)+retStr;
}
return retStr;
}
上面的代码运行结果数据是没有问题的,可能是输出格式的问题,总是Wrong Answer,我调试了各种样式的输出格式,貌似都不对。
大家看看吧,到底该如何输出?
我自我感觉算法的基本原理应该是没啥问题。








