Lowest Common Multiple Plus
Problem Description
求n个数的最小公倍数。
input
输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。
Output
为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。
Sample Input
2 4 6 3 2 5 7
Sample Output
12 70
#include<iostream> using namespace std; int gcd(int x,int y)//求出最大公约数 { return x%y==0?y:gcd(y,x%y); } int main() { int count,x,y; while(cin>>count) { x=1; for(int i=0;i<count;++i) { cin>>y;
/*简而言之,是将输入的两两之间求最大公约数,输入的数相乘除以两两之间所有的公约数*/ x/=gcd(x,y); x*=y; } cout<<x<<endl; } return 0; }