高精度计算错误,实在是调不过来了,求调!(悬关)
  • 板块灌水区
  • 楼主xdcm
  • 当前回复22
  • 已保存回复22
  • 发布时间2023/8/2 10:07
  • 上次更新2023/11/3 06:25:14
查看原帖
高精度计算错误,实在是调不过来了,求调!(悬关)
681223
xdcm楼主2023/8/2 10:07

RT

#include <bits/stdc++.h>
using namespace std;
string a1, b1;
int len_a, len_b, len, a[1001], b[1001], c[1000100];

int main() {
	cin >> a1 >> b1;
	len_a = a1.length();
	len_b = b1.length();
	for (int i = 1; i <= len_a; i++)
		a[i] = a1[i - 1] - '0';
	for (int i = 1; i <= len_b; i++)
		b[i] = b1[i - 1] - '0';
	for (int i = 1; i <= len_a; i++) {
		for (int j = 1; j <= len_b; j++) {
			c[i + j - 1] += a[i] * b[i];
		}
	}
	for (int i = 1; i <= len_a + len_b; i++) {
		if (c[i] > 9) {
			c[i + 1] += c[i] / 10;
			c[i] %= 10;
		}
	}
	len = len_a + len_b;
	while (c[len] == 0 && len > 1)
		len--;
	for (int i = len; i >= 1 ; i--)
		cout << c[i];
}
2023/8/2 10:07
加载中...