注册 登录
编程论坛 C++教室

多个数相乘

杜杜 发布于 2021-05-08 09:30, 1523 次点击
【问题描述】

输入n个正整数,输出它们的积。

输入:第一行一个正整数n,第二行有n个正整数m,数与数之间用一个空格隔开。(1<=n<=100,1<=m<=10^16)

输出:一行,一个整数,即n个正整数的乘积

【样例输入】

3

111 2222 33333

【样例输出】

8221317786
4 回复
#2
op1232022-07-12 16:48
#include<bits/stdc++.h>
using namespace std;

int main(){
    long long n,t,x=1;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>t;
        x*=t;
    }
    cout<<x<<endl;
    return 0;
}
#3
rjsp2022-07-12 19:30
1<=n<=100,1<=m<=10^16
也就是结果最大可以达到10^1600
起码需要665个字节才能存得下,而 unsigned long long 才8字节。
#4
m34404268982022-07-12 20:07
回复 3楼 rjsp
那请问这种情况应该定义什么类型?
#5
rjsp2022-07-12 20:11
回复 4楼 m3440426898
应该是题目有问题
1