题目描述
计算a*b,并输出结果。
输入格式
一行:两个空格分隔的正整数a和b
输出格式
一行:a*b的结果
输入输出样例
输入样例1:
55 2
输出样例1:
110
说明
【数据范围】
1 <= a <= 10^1020, 1 <= b <= 100;
【耗时限制】1000ms 【内存限制】128MB
//
//Created by Carlgood.
//
//Note:This program is written in version DEV-C++ 5.11.
//Subject source:"hppt://oj.codingle.cn"
# include <iostream>
# include<cmath>
# include<string>
# include<cstring>
# include<cstdio>
# include<algorithm>
# include<sstream>
# define This_program_is_written_by_Carlgood_Programming_Studio 9876543210
using namespace std;
int a[1030],c[1130];
string High_precision_integer_multiplication(string as,int x)
{
int al=as.size(),cl=al;
for(int i=1;i<=al;i++)
{
a[i]=as[al-i]-'0';
}
for(int i=1;i<=al;i++)
{
c[i]+=a[i]*x;
c[i+1]+=c[i]/10;
c[i]%=10;
}
int t=c[cl+1];
while(t)
{
c[++cl]=t%10;
t/=10;
}
while(c[cl]==0&&cl>1) cl--;
string m;
for(int i=cl;i>=1;i--)
{
m+=c[i]+'0';
}
return m;
}
int main()
{
string a;
int b;
cin>>a>>b;
cout<<High_precision_integer_multiplication(a,b);
return 0;
}

本文介绍了一个用DEV-C++编写的程序,实现高精度整数乘法,处理大数值输入(10^1020范围内),并展示了输入输出样例和数据范围限制。

被折叠的 条评论
为什么被折叠?



