設置 | 登錄 | 註冊

目前共有3篇帖子。

【试题】核桃的数量(三个数的最小公倍数的求法)

1樓 巨大八爪鱼 2016-3-13 18:23
#include <stdio.h>

//#define gcd3(a, b, c) gcd(gcd((a), (b)), (c))
#define lcm(a, b) ((a) * (b) / gcd((a), (b)))

int gcd(int a, int b)
{
    int r;
    do
    {
        r = a % b;
        a = b;
        b = r;
    } while (r != 0);
    return a;
}

int lcm3(int a, int b, int c)
{
    int d = lcm(a, b);
    return lcm(d, c);
}

int main(void)
{
    int a, b, c;
    scanf("%d%d%d", &a, &b, &c);
    printf("%d\n", lcm3(a, b, c));
    return 0;
}
2樓 巨大八爪鱼 2016-3-13 18:23
提交时间  03-13 18:23   评测结果  正确  
得分  100  
CPU使用  0ms  
内存使用  1.601MB  
3樓 巨大八爪鱼 2016-3-13 18:23
三个数的最小公倍数的求法:
int lcm3(int a, int b, int c)
{
    int d = lcm(a, b);
    return lcm(d, c);
}
先得到a与b的最小公倍数d,再得到d与c的最小公倍数就是最终结果。

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張
©2010-2025 Purasbar Ver3.0 [手機版] [桌面版]
除非另有聲明,本站採用知識共享署名-相同方式共享 3.0 Unported許可協議進行許可。