hdu2028

要注意数组要__int64才行,不然会溢出。

#include <stdio.h>
int gcd(int a,int b){
    int t,c;
    if(a<b){
        t=a;a=b;b=t;
    }
    c=1;
    while(c){
        c=a%b;
        a=b;
        b=c;

    }
    return a;
}
int main(){
    int n,i;
    int t1,t2;

    __int64 num[10000];
    while(~scanf("%d",&n)){
        for(i=0;i<n;++i){
            scanf("%d",&num[i]);
        }
        for(i=1;i<n;++i){
            num[i]=num[i-1]*num[i]/gcd(num[i-1],num[i]);
        }
        printf("%lld
",num[n-1]);
    }
    return 0;
}
原文地址:https://www.cnblogs.com/symons1992/p/3405184.html