Blog·Tanky WooABOUTRSS

HDOJ 2028 Lowest Common Multiple Plus

08 Aug 2010
这篇博客是从旧博客 WordPress 迁移过来,内容可能存在转换异常。

题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=2028


第一次做记得好像是TLE了,不知道怎么TLE的。。。 今天再一次做,一次AC~~~郁闷。

// Author: Tanky Woo
// HDOJ 2028
// Accepted 2028 0MS 200K 630 B C++ Tanky Woo 
#include 
#include 
#include 
using namespace std;

int gcd(int a, int b)
{
    if(a<b)
    {
        a ^= b;
        b ^= a;
        a ^= b;
    }
    if(b == 0)
        return a;
    return gcd(b, a%b);
}

int lcm(int a, int b)
{
    return a/gcd(a, b)*b;
}

int main()
{
    int nNum;
    while(scanf("%d", &nNum) != EOF)
    {
        int a, b;
        scanf("%d %d", &a, &b);
        a = lcm(a, b);
        for(int i=1; i<=nNum-2; ++i)
        {
            scanf("%d", &b;);
            a = lcm(a, b);
        }
        printf("%d\n", a);
    }
}