80分求助
查看原帖
80分求助
938125
xnbcgshijie楼主2023/7/26 19:52
#include <bits/stdc++.h>
#define MAXN 2005
using namespace std;

char A[MAXN],B[MAXN];
int a[MAXN],b[MAXN],c[MAXN];

int main()
{
	scanf("%s",A + 1);
	scanf("%s",B + 1);
	int la = strlen(A + 1),lb = strlen(B + 1);
	for(int i = 1;i <= la;i++)
		a[i] = A[la - i + 1] - '0';
	for(int i = 1;i <= lb;i++)
		b[i] = B[lb - i + 1] - '0';
	if(la == 1 && a[1] == 0 || lb == 1 && b[1] == 0)
	{
		cout << 0;
		return 0;
	}
	for(int i = 1;i <= la;i++)
		for(int j = 1;j <= lb;j++)
			c[i + j - 1] += a[i] * b[j];
	int lc = 1;
	while(c[lc] > 9 || lc < la + lb - 1)
		c[lc + 1] += c[lc] / 10,c[lc++] %= 10;
	for(int i = lc;i >= 1;i--)
		cout << c[i];
	return 0;
}

最后一个点过不去

2023/7/26 19:52
加载中...