80分了 会有大佬来捞捞吗55555555 20分没人捞
查看原帖
80分了 会有大佬来捞捞吗55555555 20分没人捞
782770
kda_1111楼主2022/9/14 17:00
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int a[2005],b[2005],d[2005][2005],e[2005],t=0;
void init(int c[])
{
	string s;
	cin>>s;
	c[0]=s.length();
	for(int i=1;i<=c[0];++i)
	c[i]=s[c[0]-i]-'0';
}	
int main()
{
	init(a);init(b);
	for(int i=1;i<=2005;++i)
	{
		for(int j=1;j<=2005;++j)
		{
			d[i][j]+=a[i]*b[j];
			if(d[i][j]>=10)
			{
				d[i][j+1]+=d[i][j]/10;//先坐哪一步? 
				d[i][j]%=10;
			}
		}
	}
	for(int m=1;m<=2005;++m)//这里二维数组怎么加在一起  
	{
		 for(int n=1;n<=m;++n)
		 {
		 	e[m]+=d[n][m-n];
		 }
		 while(e[m]>=10)
		 {
		 	e[m]-=10;
		 	e[m+1]+=1;
		 }
	}
	for(int i=2005;i>=1;--i)
	{
		if(e[i]!=0)
		{
			t=i;
			break;
		}
	}
	if(t==0) cout<<"0";
	else
	{
		for(int j=t;j>1;--j)
	    cout<<e[j];
	}
	return 0;
}
2022/9/14 17:00
加载中...