最大公约数和最小公倍数

最大公约数和最小公倍数

Thu Oct 03 2024
zzcoe
1 分钟

注意负数的情况

求最大公因数,辗转相除法

PLAINTEXT
1
2
3
4
5
6
7
8
9
10
11
//此段代码a、b可以为0,且不必区分a与b的大小。
long long int gcd(int a,int b) {
    int t;
    while(b)
    {
        t = a % b;
        a = b;
        b = t;
    }
    return a;
}

最小公倍数lcm:

PLAINTEXT
1
2
3
long long lcm(long long a,long long b){
    return a*b/gcd(a,b);
}