#include <bits/stdc++.h>
using namespace std;
char a[100005],b[100005];
int a1[100005],b1[100005],c[200005];
int len;
int main()
{
cin>>a>>b;
int as=strlen(a);
int bs=strlen(b);
for(int i=1;i<=as;i++)
a1[i]=a[as-i]-'0';
for(int i=1;i<=bs;i++)
b1[i]=b[bs-i]-'0';
if(a[0]=='-' || b[0]=='-')
{
for(int i=1;i<=as;i++)
{
if(a1[i]<b1[i])
{
a1[i+1]--;
a1[i]+=10;
}
c[i]=a1[i]-b1[i];
}
len=as;
while(c[len]==0 && len>1)
len--;
}
else
{
len=max(as,bs);
for(int i=1;i<=len;i++)
{
c[i]+=a1[i]+b1[i];
c[i+1]=c[i]/10;
c[i]%=10;
}
}
for(int i=len;i>=1;i--)
cout<<c[i];
return 0;
}
请问有大佬知道为什么第三个点会WA吗?
P1601_3输入:
11111111111111111111111111
9999999999999999999999999999999999
输出:
10000000011111111111111111111111110
谢谢