求救大佬,20分!
查看原帖
求救大佬,20分!
596448
_Ayanami_Rei_楼主2022/3/6 10:50
#include<iostream>
using namespace std;
char A[510], B[510];
int main(){
	
	cin >> A >> B;
	
	if (A[0] == '0' or B[0] == '0') {
		cout << 0;
		return 0;
	}
	
	int a[510] = {0}, b[510] = {0};
	int lena = strlen(A) - 1, lenb = strlen(B) - 1;
	for (int i = lena;i >= 0; --i) {
		a[i] += A[lena - i] - '0';
	}
	for (int i = lenb;i >= 0; --i) {
		b[i] += B[lenb - i] - '0';
	}
	
	int c[1020] = {0}, lenc = lenb + lena + 1;
	for (int i = 0;i <= lena; ++i) {
		for (int j = 0;j <= lenb; ++j) {
			c[i + j] = a[i] * b[j];
		}
	}
	
	for (int i = 0;i <= lenc; ++i) {
		c[i + 1] = c[i + 1] + c[i] / 10;
		c[i] = c[i] % 10;
	}
	
	while (c[lenc] == 0) {
		--lenc;
	}
	for(int i = lenc;i >= 0; --i) {
		cout<<c[i];
	}
	return 0;
}

2022/3/6 10:50
加载中...