题目背景
对应的选择、判断题:https://ti.luogu.com.cn/problemset/1142
题目描述
小 A 最初刚刚学习了乘法,为了帮助他练习,我们给他若干个正整数,并要求他将这些数乘起来。
对于大部分题目,小 A 可以精确地算出答案,不过,若这些数的乘积超过 106,小 A 就不会做了。
请你写一个程序,告诉我们小 A 会如何作答。
输入格式
第一行一个整数 n,表示正整数的个数。
接下来 n,每行一个整数 a。小 A 需要将所有的 a 乘起来。
输出格式
输出一行,如果乘积超过 106,则输出 >1000000;否则输出所有数的乘积。
输入输出样例
输入 #1复制
2
3
5
输出 #1复制
15
输入 #2复制
3
100
100
100
输出 #2复制
1000000
输入 #3复制
4
100
100
100
2
输出 #3复制
>1000000
说明/提示
数据规模与约定
对全部的测试数据,保证 1≤n≤50,1≤a≤100。
代码实现:
cpp
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
long long sum = 1;
bool flag = false;
for (int i = 0; i < n; ++i) {
int x;
cin >> x;
sum *= x;
if (sum > 1000000) flag = true;
}
if (flag) cout << ">1000000" << endl;
else cout << sum << endl;
return 0;
}