MnZn求助
  • 板块学术版
  • 楼主ZHUHK
  • 当前回复2
  • 已保存回复2
  • 发布时间2022/1/25 22:34
  • 上次更新2023/10/28 10:56:33
查看原帖
MnZn求助
304458
ZHUHK楼主2022/1/25 22:34

MnZn求助

string operator *(string a,string b)
{
	string ans;
	int ma[1000],mb[1000],mc[1000000],lena,lenb,lenc,x;
	lena=a.length();lenb=b.length();
	for(int i=0;i<lena;i++) ma[lena-i]=a[i]-'0';
	for(int i=0;i<lenb;i++) mb[lenb-i]=b[i]-'0';
	for(int i=1;i<=lena;i++)
	{
		x=0;
		for(int j=1;j<=lenb;j++)
		{
			mc[i+j-1]+=a[i]*b[j]+x;
			x=mc[i+j-1]/10;
			mc[i+j-1]%=10;
		}
		mc[i+lenb]=x;
	}
	lenc=lena+lenb;
	while(mc[lenc]==0&&lenc>1) lenc--;
	for(int i=lenc;i>=1;i--) ans+=(mc[i]+'0');
	return ans;
}

初学高精度,不知道错在哪里

2022/1/25 22:34
加载中...