80!#1WA!
  • 板块P1303 A*B Problem
  • 楼主tlzhy
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/4/28 23:49
  • 上次更新2023/11/4 23:59:58
查看原帖
80!#1WA!
309803
tlzhy楼主2021/4/28 23:49
#include<iostream>
#include<algorithm>
#include<memory.h>
using namespace std;
typedef int hugeint [10000000];
hugeint a,b,c;

	void input(int a[])
	{
		memset(a,0,sizeof(a));
		string n;
		cin>>n;
		for(int i=n.size()-1;i>=0;i--)
		{
			a[++a[0]]=n[i]-'0';
		}
	}
	void print(int a[]){
		for(int i=a[0];i>0;i--)
		{
			cout<<a[i];
		}
		cout<<endl;
	}

	void m(int *a,int *b,int *c){
		memset(c,0,sizeof(c));
		c[0]=a[0]+b[0]-1;
		int i,j,jw=0;
		for(i=1;i<=a[0];i++)
			for(j=1;j<=b[0];j++)
			{
				c[i+j-1]+=a[i]*b[j];
			}
		for(i=1;i<=c[0];i++)
		{
			c[i]+=jw;
			jw=c[i]/10;
			c[i]%=10;
		}
		if(jw>0)c[++c[0]]=jw;
	}
	
int main(){
	input(a);
	input(b);
	m(a,b,c);
	print(c);
	
	return 0;
}


2021/4/28 23:49
加载中...