/ hdoj

hdoj-2028 Lowest Common Multiple Plus

// hdoj_2028 Lowest Common Multiple Plus
// 0MS  228K  341 B  GCC

#include <stdio.h>
int main(void)
{
    int n;
    __int64 x, y, a, b, temp;
    while(scanf("%d", &n) != EOF)
    {
        scanf("%I64d", &x);
        a = x;
        while(--n)
        {
            scanf("%I64d", &y);
            b = y;
            while(y)
            {
                temp = x%y;
                x = y;
                y = temp;
            }
            x = a*b/x;
            a = x;
        }
        printf("%I64dn", x);
    }
    return 0;
}
/*
32位数……
int; long int; long long 都不行(理论上 __int64 和long long 是相同的,但由于用的是windows下的MingW,所以long long 不可以,__int64可以)
__int64可以
注意输入和输出的时候要用%I64d
*/

相关资料:
__int64 类型(VC中)与long long 型(gcc中,C99标准)