80分求解
查看原帖
80分求解
938847
xiazhengyu楼主2023/7/16 16:31

哪错了???

#include<bits/stdc++.h>
using namespace std;
#define maxx 1145
char sa[maxx],sb[maxx];
int la,lb,lc, jw,f,w,a[maxx],b[maxx],c[maxx*maxx];
int main()
{
	scanf("%s",sa);
	scanf("%s",sb);
	la=strlen(sa);
	lb=strlen(sb);
	for (int i=0;i<la;i++)
	{
		a[la-i-1]=sa[i]-'0';
	}
	for (int i=0;i<lb;i++)
	{
		b[lb-i-1]=sb[i]-'0';
	}
	jw=0;
	for (int i=0;i<la;i++)
	{
		for (int j=0;j<lb;j++)
		{
			f=a[i]*b[j];
			jw=f/10;
			f%=10;
			w=i+j;
			c[w]=c[w]+f;
			c[w+1]=c[w+1]+jw+c[w]/10;
			c[w]%=10;
		}
	}
	lc=la+lb;
	while(c[lc]==0)lc--;
	if(lc<0)
	{
		printf("0");
	}
	else
	for(int i=lc;i>=0;i--)
	{
		printf("%d",c[i]);
	}
	return 0;
}
2023/7/16 16:31
加载中...