查看原帖
307895
jzy_2020011楼主2021/9/12 17:54
#include <cstdio>
#include <algorithm>
using namespace std;
int a[2000],b[2000],c[2000];
int main()
{
	int i=0;
	char v;
	while(true)
	{
		v=getchar();
		if (v=='\n') break;
		a[i]=v-'0';
		i++;
	}
	int j=0;
	while(true)
	{
		v=getchar();
		if (v=='\n') break;
		b[j]=v-'0';
		j++;
	}
	if (a[0]==0||b[0]==0)
	{
		printf("0");
		return 0;
	}
	for (int nn=0;nn<=j;nn++)
		for (int jj=0;jj<=i;jj++)
			c[nn+jj]+=a[jj]*b[nn];
	int xx=max(i,j);
	for (int q=xx;q>=0;q--)
	{
		if (c[q]>9&&q>0)
		{
			c[q-1]+=c[q]/10;
			c[q]%=10;
		}
	}
	int o=2000;
	while(!c[o--]);
	o++;
	for (int k=0;k<=o;k++)
	{
		printf("%d",c[k]);
	}
//	bool u=0;
//	for (int o=0;o<xx;o++)
//	{
//		if (u||c[o]!=0)
//		{
//			u=1;
//			printf("%d",c[o]);
//		}
//	}
	return 0;
}
2021/9/12 17:54
加载中...