#include<iostream>
#include<string>
using namespace std;
string sum(string str1,string str2)
{
int ll=str1.length();//计算str1的长度
int ss=str2.length();//计算str2的长度
if(ll<ss)
{
for(int i=0;i<ss-ll;i++)
str1="0"+str1;
//如果str1的长度小于str2的长度 在str1前部0
//例如 123 0000123
// 3214345 3214345
}
else {
for(int i=0;i<ll-ss;i++)
str2="0"+str2;
//如果str1的长度大于str2的长度 在str1前部0
//例如 3214345 3214345
// 123 0000123
}
ll=str1.length();//重新计算str1的长度这时str1的长度等于str2的长度
string str;
int t;
int cf=0;//借位
for(int i=ll-1;i>=0;i--)//计算方法从最低位计算
{
if(str1[i]<str2[i]+cf)
{
str=char(str1[i]-str2[i]-cf+'0'+10)+str;
cf=1;
// 当str1[i]<str2[i] 结果<0 所以+10 此时 cf=1借前面一位
}
else
{
str=char(str1[i]-str2[i]-cf+'0')+str;
cf=0;
}
}
str.erase(0,str.find_first_not_of('0'));//去除前面多余的0
// 例 000213
// 213
return str;
}
int main()
{
string str1,str2;
cin>>str1>>str2;
cout<<sum(str1,str2);
}
04-05
01-30
1926
04-26
432
08-29
639