20分,8WA求助
查看原帖
20分,8WA求助
1071849
e_zhe楼主2024/4/26 21:03
#include<bits/stdc++.h>
#define ll long long
using namespace std;
string a,b;
int ans[10100];
bool cmp(string aa,string bb){
	if(aa.size()==bb.size())return(aa<bb)?true:false;
	else return(aa.size()<bb.size())?true:false;
}
void sub(){
	if(cmp(a,b)){swap(a,b);cout<<'-';}
	int la=a.size();
	int lb=b.size();
	a='0'+a;b='0'+b;
	int tmp=la-lb;
	while(tmp--)b='0'+b;
	for(int i=1;i<=la;++i)ans[i]=a[i]-b[i];
	bool f=true;
	while(true){
		f=true;
		for(int i=1;i<=la;++i){
			if(ans[i]<0){
				--ans[i-1];
				ans[i]+=10;
				f=false;
			}
		}
		if(f)break;
	}
	f=true;
	for(int i=1;i<=la;++i){
		if(!ans[i])continue;
		f=false;
		cout<<ans[i];
	}
	if(f)cout<<0;
	return;
}
int main(){
	cin>>a>>b;
	sub();
	return 0;
}
2024/4/26 21:03
加载中...