代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[100010],b[100010],c[100010];
int main()
{
memset(c,0,sizeof(c));
string x,y;
cin>>x>>y;
long long len1=x.size(),len2=y.size();
for(int i=0;i<len1;i++)
a[i+1]=x[i]-'0';
for(int i=0;i<len2;i++)
b[i+1]=y[i]-'0';
for(int i=0;i<=max(len1,len2);i++)
{
if(a[i]+b[i]<=9)
c[i]+=a[i]+b[i];
else if(a[i]+b[i]==10)
c[i]+=0,c[i+1]++;
else if(a[i]+b[i]>=10)
c[i+1]++;
}
int ca=c[max(len1,len2)+1];
if(ca!=0) cout<<ca;
for(int i=max(len1,len2);i>=1;i--)
cout<<c[i];
return 0;
}
问题可能比较多,主要就是不进位。请求大佬帮调一下。