求助大佬(过不了)
查看原帖
求助大佬(过不了)
292653
tyzc114514楼主2022/7/19 10:16
#include<bits/stdc++.h>
using namespace std;
int main(){
	string s1,s2;
	int s3;
	cin>>s1>>s2;
	 if(s1.size()<s2.size()||s1.size()==s2.size()&&s1<s2){
		cout<<"-";swap(s1,s2);
	}
	int a[1005]={0},b[1005]={0},c[1005]={0};
	int len1=s1.length();
	int len2=s2.length();
	int len3=max(len1,len2);
	//倒序存储
	for(int i=0;i<len1;i++){ 
		a[len1-i]=s1[i]-'0';	
	} 
	for(int i=0;i<len2;i++){
		b[len2-i]=s2[i]-'0';
	}//依次相减
	for(int i=1;i<=len3;i++){
		c[i]=a[i]-b[i];
	}  //借位操作
	 for(int i=1;i<=len3;i++){
	 	if(c[i]<0){
	 		c[i]+=10;
	 		c[i+1]--;
		 }
	 }
	 while(c[len3]==0&&len3>1)len3--;
	 for(int i=len3;i>=1;i--)
	 cout<<c[i];
    return 0;
}
2022/7/19 10:16
加载中...