Product(大數相乘)

Description

The problem is to multiply two integers X, Y. (0<=X,Y<10250)

Input

The input will consist of a set of pairs of lines. Each line in pair contains one multiplyer.

Output

For each input pair of lines the output line should consist one integer the product.

Sample Input

12
12
2
222222222222222222222222

Sample Output

144
444444444444444444444444

HINT

#include<iostream>
#include<string.h>
using namespace std;
int main()
{
	char a[10000],b[10000];
	int i,j,t1,c,t2;
	while(cin>>a>>b)
	{
		int sum[10000]={0};
		int x=strlen(a);
		int y=strlen(b);
		t1=9999;t2=9999;
		for(i=x-1;i>=0;i--)
		{
			for(j=y-1;j>=0;j--)
				sum[t1--]+=((a[i]-'0')*(b[j]-'0'));
			t2--;
			t1=t2;
		}
		c=0;
		for(i=9999;i>=0;i--)
		{
			sum[i]+=c;
		    c=0;
		    if(sum[i]>9)
			{
				c=sum[i]/10;
				sum[i]=sum[i]%10;
			}
		}
		for(i=0;i<10000;i++)
		{
			if(sum[i]!=0)
				break;
		}
		for(j=i;j<10000;j++)
			cout<<sum[j];
		cout<<endl;
	}
	return 0;
}


 

發佈了77 篇原創文章 · 獲贊 4 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章