18级李灏冬 • 4年前
#include<bits/stdc++.h>
using namespace std;
string a,b;
int a1[100],a2[100];
int len1,len2;
int flag;
bool cmp(string num1,string num2){
if(num1.size()!=num2.size()){
return num1.size()<num2.size();
}
return num1<num2;
}
int main(){
cin>>a>>b;
if(cmp(a,b)){
flag=true;
swap(a,b);
}
len1=a.size();
len2=b.size();
for(int i=0;i<len1;i++){
a1[i]=a[len1-i-1]-'0';
}
for(int i=0;i<len2;i++){
a2[i]=b[len2-i-1]-'0';
}
for(int i=0;i<len1;i++){
a1[i]-=a2[i];
}
for(int i=0;i<len1;i++){
while(a1[i]<0){
a1[i+1]--;
a1[i]+=10;
}
}
while(len1>1 && a1[len1-1]==0){
len1--;
}
if(flag==true){
cout<<"-";
}
for(int i=len1-1;i>=0;i--){
cout<<a1[i];
}
cout<<endl;
return 0;
}
评论: