代码:
#include <bits/stdc++.h>
using namespace std;
string sub (string x , string y)
{
int a[10100] = {},b[10100] = {},c[10100] = {},k = 0;
for (int i = x.size() - 1 ; i >= 0 ; i--)
{
k++;
a[k] = x[i] - '0';
}
k = 0;
for (int i = y.size() - 1 ; i >= 0 ; i--)
{
k++;
b[k] = y[i] - '0';
}
int len = x.size();
for (int i = 1 ; i <= len ; i++)
{
c[i] = a[i] - b[i] + c[i];
if (c[i] < 0)
{
c[i + 1]--;
c[i] += 10;
}
}
while (c[len] == 0) len--;
string z = "";
for (int i = len ; i >= 1 ; i--)
{
z = z + char(c[i] + '0');
}
return z;
}
int main()
{
string a,b;
cin >> a >> b;
if (a.size() < b.size())
{
swap(a , b);
cout << '-';
}
if (a.size() == b.size() && a < b)
{
swap(a , b);
cout << '-';
}
cout << sub(a , b) << endl;
return 0;
}