求大佬告知错误
查看原帖
求大佬告知错误
181715
gjh303987897楼主2021/9/19 11:16
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string>
#define maxn 10100
using namespace std;
int pd;
string a,b;
int na[maxn],nb[maxn],ans[maxn];
int lena,lenb,lmax,ch;
string c; 
void in(){
	if(a.size()<b.size()) pd=1;
	if(a.size()==b.size()&&pd==0){
		for(register int i=a.size();i>0;i--) if(b[i-1]>a[i-1]) {
			pd=1; break;
		}
	}
	if(pd==1){
		c=b;b=a;a=c;
	} lena=a.size(); lenb=b.size();
	for(register int i=a.size();i>0;i--)  na[i]=a[a.size()-i]-'0';
	for(register int i=b.size();i>0;i--)  nb[i]=b[b.size()-i]-'0';
}
void deal(){
	for(register int i=1;i<=lenb;i++){
		if(na[i]<nb[i]) na[i]+=10,na[i+1]--;
		ans[i]=na[i]-nb[i];
	}
}
int main()
{
	cin>>a,b; 
	in(); deal();  
	if(pd) cout<<"-"; 
	for(int i=lena;i>0;i--){if(ans[i]!=0) cout<<ans[i],ch=1;
	}
	if(ch==0) cout<<0;
	return 0;
}
2021/9/19 11:16
加载中...