1920.cpp

来自「HDOJ acm.hdu.edu.cn 第10卷的一些题目」· C++ 代码 · 共 30 行

CPP
30
字号
//1920
#include <cstdio>
#include <string>
#include <cmath>
#include <vector>
#include <algorithm>
using namespace std;
const int WMAX = 5;
const int PMAX = 1000000000;
int cas,n,w[WMAX];
int lcm(int a,int b) {
	if (a%b == 0) return b;
	return lcm(b,a%b);
}
int main() {
	int i,j,ans;
	scanf("%d",&cas);
	while (cas --) {
		scanf("%d",&n);
		ans = 1;
		for (i=0;i<n;i++) scanf("%d",w+i);
		for (i=0;i<n;i++) {
			double dt = 1.0*ans*w[i] / lcm(ans,w[i]);
			if (dt > PMAX) break;
			ans = dt;
		}
		if (i == n) printf("%d\n",ans);
		else puts("More than a billion.");
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?