萌新40分求助QAQ,第一个点没错但不知为啥过不了导致后面案例看不到
查看原帖
萌新40分求助QAQ,第一个点没错但不知为啥过不了导致后面案例看不到
662039
Mayueriu楼主2023/3/11 20:27
#include<iostream>
#include<iomanip>
#include<algorithm>
#include<string>
using namespace std;

string plus_(string a, string b) {
	reverse(a.begin(), a.end());
	reverse(b.begin(), b.end());
	int arr[1000] = { 0 };
	int s1[1000] = { 0 }, s2[1000] = { 0 };
	for (int i = 0; i < a.size(); i++) s1[i] = a[i] - '0';
	for (int i = 0; i < b.size(); i++) s2[i] = b[i] - '0';
	for (int i = 0; i < a.size(); i++) {
		for (int j = 0; j < b.size(); j++) {
			arr[i + j] += s1[i] * s2[j];
		}
	}
	string c; int fl = 0;
	for (int i = 0; i <= a.size()*b.size(); i++) {
		arr[i + 1] += arr[i] / 10;
		arr[i] %= 10;
		c.insert(c.begin(), arr[i] + '0');
	}
	while (c[0] == '0')
		c.erase(0, 1);
	if (c == "") c = '0';
	return c;

}

int main() {
	string s1, s2;
	cin >> s1 >> s2;
	cout << plus_(s1, s2);

}


2023/3/11 20:27
加载中...