考察的大数加法,王道书上说是高精度整数
没有采用他给的板子,直接用字符串按照规则进行加法运算。
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
string addString(string a,string b)
{
string res;
int carry=0;
int i=a.size()-1;
int j=b.size()-1;
while(i>=0 && j>=0)
{
int num=carry+a[i]-'0'+b[j]-'0';
res+=num%10+'0';
carry=num/10;
i--;j--;
}
while(i>=0)
{
int num=carry+a[i]-'0';
res+=num%10+'0';
carry=num/10;
i--;
}
while(j>=0)
{
int num=carry+b[j]-'0';
res+=num%10+'0';
carry=num/10;
j--;
}
if(carry>0)
res+=to_string(carry);
reverse(res.begin(),res.end());
return res;
}
int main()
{
string a,b;
while(cin>>a>>b)
{
cout<<addString(a,b)<<endl;
}
return 0;
}


京公网安备 11010502036488号