反例有点怪
查看原帖
反例有点怪
1071242
wuzhaozhong123楼主2024/2/26 19:43

就算ac了但我还是找到了反例 99998 9079 好奇怪,错哪了???

#include<bits/stdc++.h>
using namespace std;
int a1[10089],a2[10089],a3[10089];
string s1,s2;
int main(){
	ios::sync_with_stdio(false);
	cin>>s1>>s2;
	if(s1.size()<s2.size()||s1.size()==s2.size()&&s1<s2){
		swap(s1,s2);
		cout<<"-";
	}
	for(int i=0;i<s1.size();i++){
		a1[i]=s1[s1.size()-i-1]-'0';
	}
	for(int i=0;i<s2.size();i++){
		a2[i]=s2[s2.size()-i-1]-'0';
	}
	for(int i=0;i<s1.size();i++){
		if(a1[i]<a2[i]){
			a1[i]+=10;
			a1[i+1]=a1[i+1]-1;
		}
		a3[i]=a1[i]-a2[i];
	}
	int index=0;
	for(int i=s1.size()-1;i>=0;i--){
		if(a3[i]!=0){
			index =i;
			break;
		} 
	}
	for(int i=index;i>=0;i--){
		cout<<a3[i];
	}
    return 0;
}
2024/2/26 19:43
加载中...