30分求调!
查看原帖
30分求调!
1176398
xuyixuan_123楼主2024/12/30 20:49

有大佬看一下我的代码有什么问题吗?

上代码

#include<bits/stdc++.h>
using namespace std;
string s1,s2;
int a[10010],b[10010],sum[510];
int main(){
	cin>>s1>>s2;
	if(s2.length()>s1.length() || (s2.length()==s1.length() && s1<s2)){
		cout<<"-";
		swap(s1,s2);
	}
	for(int i=0;i<s1.length();i++){
		a[i]=s1[s1.length()-i-1]-'0';
	}
	for(int i=0;i<s2.length();i++){
		b[i]=s2[s2.length()-i-1]-'0';
	}
	int m=max(s1.length(),s2.length());
	for(int i=0;i<m;i++){
		sum[i]+=a[i]-b[i];
		if(sum[i]<0){
			sum[i+1]--;
			sum[i]+=10;
		}
	}
	m--;
	int pos=0;
	for(int i=500;i>=0;i--){
		if(sum[i]){
			pos=i;
			break;
		}
	}
	for(int i=pos;i>=0;i--){
		cout<<sum[i];
	}
	return 0;
}

(请在原文上改,该对必关)

2024/12/30 20:49
加载中...