题目名称 39. 增强的乘法问题
输入输出 mul.in/out
难度等级 ★☆
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 12
题目来源 GravatarIM_ask 于2008-07-06加入
开放分组 全部用户
提交状态
分类标签
高精度 FFT CTS论文相关
分享题解
通过:639, 提交:1493, 通过率:42.8%
GravatarTA 100 0.000 s 0.00 MiB Pascal
GravatarLOSER 100 0.000 s 0.00 MiB C++
Gravatar哒哒哒哒哒! 100 0.000 s 0.00 MiB C++
GravatarMealy 100 0.000 s 0.00 MiB C++
GravatarGo灬Fire 100 0.000 s 0.00 MiB C++
Gravatar【离开·再见】星裔·自由蒂兰 100 0.000 s 0.00 MiB C++
GravatarLOSER 100 0.000 s 0.00 MiB C++
Gravatar浮生随想 100 0.000 s 0.00 MiB C++
GravatarHzoi_Queuer 100 0.000 s 0.00 MiB C++
Gravatarjxy_1999 100 0.000 s 0.00 MiB Pascal
本题关联比赛
基本练习
NOIP2015普及组练习
关于 增强的乘法问题 的近10条评论(全部评论)
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <algorithm>
#include <string.h>
using namespace std;
string BigMul(string s,string t){
freopen("mul.in","r",stdin);
freopen("mul.out","w",stdout);
int sum[10005] = {0},a[10005],b[10005],tmp,extra,i,j,start,length1,length2;
char goal[10005];
reverse(s.begin(),s.end());
reverse(t.begin(),t.end());
length1 = s.length();
length2 = t.length();
for(i = 0;i < length1;i++){
a[i] = (int)(s[i] - '0');
}
for(i = 0;i < length2;i++){
b[i] = (int)(t[i] - '0');
}
for(i = 0;i < length1;i++){
start = i;
for(j = 0;j < length2;j++){
sum[start] += a[i]*b[j];
start ++;
}
}
for(i = 0;i < start;i++){
sum[i + 1] += sum[i] / 10;
sum[i] = sum[i] % 10;
}
while(sum[i] == 0){
i --;
}
start = 0;
for(j = i ;j >= 0;j--){
goal[start] = (char)(sum[j] + '0');
start ++;
}
goal[start] = '\0';
return (string)goal;
}
int main(){
string s,t;
while(cin>>s>>t){
freopen("in.txt","r",stdin);
cout<<BigMul(s,t)<<endl;
}
}
求大神帮忙改一下
Gravatar3280175901
2018-10-11 20:24 31楼
服了fft的常数
Gravatar泪寒之雪
2018-01-26 20:19 30楼
GravatarCooook
2017-11-09 19:25 29楼
Gravatarzeppoe
2017-11-02 19:37 28楼
回复 @Hzoi_Go灬Fire :
你这个处理不了负数.
GravatarFisher.
2017-07-07 11:14 27楼
GravatarAntiLeaf
2017-05-25 15:50 26楼
GravatarkZime
2017-02-12 21:07 25楼
重载过的
GravatarHeHe
2017-01-09 13:29 24楼
竟然不用考虑负数。。。
GravatarZwoi_只会打表抄代码的蒟蒻
2016-11-05 16:12 23楼
一晚上手写大整数封装,加减乘除大小等加上取模,不要白不要
GravatarHzoi_Go灬Fire
2016-10-31 21:29 22楼

39. 增强的乘法问题

★☆   输入文件:mul.in   输出文件:mul.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】

输入两个整数,输出它们的乘积。

【输入格式】

输入文件只有两行,第一行一个整数$x$,第二行一个整数$y$。其中$0\leq x \leq 10^{100}, 0\leq y\leq 10^{100}$。

【输出格式】

输出文件有1行,为两个数的乘积。

【输入样例】

123456789
123456789123456789

【输出样例】

15241578765432099750190521