首页 > 其他 > 详细

Product(大数相乘)

时间:2014-11-25 14:36:34      阅读:260      评论:0      收藏:0      [点我收藏+]

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;
}


 

Product(大数相乘)

原文:http://blog.csdn.net/phytn/article/details/41479161

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!