记录编号 111909 评测结果 AAAAAAAAAAAA
题目名称 增强的乘法问题 最终得分 100
用户昵称 GravatarRACHE 是否通过 通过
代码语言 C++ 运行时间 0.003 s
提交时间 2014-07-14 15:21:27 内存使用 0.31 MiB
显示代码纯文本
#include<cstdio>
#include<fstream>
#include<fstream>
#include<string>
using namespace std;
int main()
{
	string s1,s2;
	int a[200]={0},b[200]={0};
	int re[200]={0};
	int i,s=0;
	int size=0,temp;
	ifstream fin("mul.in");
	ofstream fout("mul.out");
	fin>>s1>>s2;
	size=s1.length()+s2.length();
	if((s1[0]-'0'==0)||(s2[0]-'0'==0))
	{
		fout<<0;
		return 0;
	}
	for(i=s1.length();i>0;i--,s++)
	{
		a[i]=s1[s]-'0';
	}
	for(i=s2.length(),s=0;i>0;i--,s++)
	{
		b[i]=s2[s]-'0';
	}
	for(i=1;i<=s1.length();i++)
	{
		for(s=1;s<=s2.length();s++)
		{
			re[s+i-1]=re[s+i-1]+a[i]*b[s];
		}
	}
	for(i=1;i<=size-1;i++)
	{
		re[i+1]=re[i+1]+re[i]/10;
		re[i]=re[i]%10;
	}
	temp=size;
	for(i=size;;i--)
	{
		if(re[i]==0)
		{
			temp--;
		}
		else
			break;
	}
	for(i=temp;i>0;i--)
	{
		fout<<re[i];
	}
	return 0;
}