80分求助,最后一点错了
查看原帖
80分求助,最后一点错了
816837
nameless_miao楼主2023/9/2 17:01
#include <bits/stdc++.h>
using namespace std;

int a[2005] = {0},b[2005] = {0},c[4005] = {0};
string s1,s2;
bool k = 0;

int main(){
	cin>>s1;
	for(int i = s1.size() - 1;i >= 0;i--){
		a[s1.size() - i] = s1[i] - '0';
	}
	cin>>s2;
	for(int i = s2.size() - 1;i >= 0;i--){
		b[s2.size() - i] = s2[i] - '0';
	}
	for(int i = 1;i <= s1.size() + s2.size();i++){
		for(int j = 1;j <= i;j++){
			c[i] += a[j] * b[i + 1- j];
			if(c[i] >= 10){
				c[i + 1] += c[i] / 10;
				c[i] %= 10;
			} 
		}
	}
	for(int i = s1.size() + s2.size();i >= 1;i--){
		if(k || c[i] != 0 || i == 1){
			cout<<c[i];
			k = 1;
		}
	}
	return 0;
}

最后一个点过不去

2023/9/2 17:01
加载中...