@[XuYu0317](/user/1120928) 可能答案为 **负数**
by IceKylin @ 2024-02-23 08:45:12
```cpp
#include<iostream>
#include<string>
using namespace std;
long long a[100000],b[100000],c[100000],lena,lenb;
string n1,n2;
int main()
{
cin>>n1>>n2;
lena=n1.length();
lenb=n2.length();
if(lena<lenb||(lena==lenb&&n1<n2) )
{
swap(n1,n2);
swap(lena,lenb);
cout<<"-";
}
for(int i=0;i<=lena-1;i++)
{
a[i]=n1[lena-1-i]-'0';
}
for(int i=0;i<=lenb-1;i++)
{
b[i]=n2[lenb-1-i]-'0';
}
for(int i=0;i<=lena-1;i++)
{
if(a[i]<b[i])
{
a[i+1]--;
a[i]+=10;
}
c[i]=a[i]-b[i];
}
while(c[lena-1]==0&&lena>1)
{
lena--;
}
for(int i=lena-1;i>=0;i--)
{
cout<<c[i];
}
return 0;
}
```
by zky2023 @ 2024-02-23 09:13:10
结果可能为负数,先判断大小,然后大的在前小的在后并输出负号
by zky2023 @ 2024-02-23 09:15:20
建议AcWing
by Nk96321 @ 2024-02-23 09:39:27