题解 | a+b
a+b
https://www.nowcoder.com/practice/4c39c984ea3848b48e111b8e71ec1dd4
#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';
carry=num/10;
res+=(num%10)+'0';
i--;
j--;
}
while(i>=0){
int num=carry+a[i]-'0';
carry=num/10;
res+=(num%10)+'0';
i--;
}
while(j>=0){
int num=carry+b[j]-'0';
carry=num/10;
res+=(num%10)+'0';
j--;
}
if(carry>0){ //不要忘记最后的进位
res+=carry-'0';
}
reverse(res.begin(),res.end());
return res;
}
int main() {
string a,b;
while(cin>>a>>b){
string res=addString(a, b);
cout<<res<<endl;
}
}
