不要让昨天 占据你的今天 夏午晴天

夏午晴天

求n个数的最小公倍数

/*

求n个数的最小公倍数。

Input

输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。

Output

为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。

Sample Input

2 4 6
3 2 5 7

Sample Output

12
70
*/
#include <iostream>

using namespace std;
long long gcd(long long x,long long y) {
    if(x<y)
    {
        long long t=x;
        x=y;
        y=t;
    }
    return y!=0?gcd(y,x%y):x;
}
int main() {
    long long n;
    while(cin>>n)
    {
        long long a[100000];
        long long i=0;
        while(n--)
        {
            long long s;
            cin>>s;
            a[i] = s;
            i++;
        }
        i--;
        while(i!=0)
        {
            long long k;
            k = gcd(a[i],a[i-1]);
            a[i-1]=a[i]/k*a[i-1];
            i--;
        }
        cout<<a[i]<<endl;
    }
    return 0;
}

posted on 2017-02-21 16:13  夏晴天  阅读(514)  评论(0编辑  收藏  举报

导航

Live2D