蒟蒻全RE求助
查看原帖
蒟蒻全RE求助
402064
kangjingcheng楼主2022/7/19 18:10

如题。代码如下:

#include<iostream>
#include <cstdio>
using namespace std;
long long W=1000000000;
long long num1[120000],num2[120000];
long long ans[240000];
void put(long long a)
{
	long long bj=W/10;
	while(a<bj)
	{
		cout<<'0';
		bj/=10;
	}
	if(a!=0)cout<<a;
}
int main()
{
	char h;long long p1=0,p2=0;
	h=getchar();
	int time1=0;
	while(h!='\n')
	{
		num1[p1]*=10;
		num1[p1]+=h-'0';
		time1++;
		if(time1==9){p1++;time1=0;}
		h=getchar();
	}
	for(int a=0;a<9-time1;a++)
	{
		num1[p1]*=10;
	}
	h=getchar();
	int time2=0;
	while(h!='\n')
	{
		num2[p2]*=10;
		num2[p2]+=h-'0';
		time2++;
		if(time2==9){p2++;time2=0;}
		h=getchar();
	}
	for(int a=0;a<9-time2;a++)
	{
		num2[p2]*=10;
	}
	for(int a=p1;a>=0;a--)
	{
		for(int b=p2;b>=0;b--)
		{
			ans[a+b+1]+=num1[a]*num2[b];
			ans[a+b]+=ans[a+b+1]/W;
			ans[a+b+1]%=W;
		}
	}
	cout<<ans[0];
	int a0=18-time1-time2;
	p1-=a0/9;
	for(int a=0;a<a0%9;a++)
	{
		ans[p1+p2+1]/=10;
	}
	for(int a=1;a<=p1+p2;a++)
	{
		put(ans[a]);
	}
	cout<<ans[p1+p2+1];
}
2022/7/19 18:10
加载中...