算法学习->gcd/extGcd/lcm

GCD、extGcd、LCM

#include
#include

//1、直接调用库函数
//头文件:#include 
//__gcd(a,b) 

//2、 
long long gcd(long long a,long long b){
    return (b==0)?a:gcd(b,a%b);
}

//3、 ax+by=m
long long extGcd(long long a,long long b,long long &x,long long &y){
    if(b==0){
        x=1;
        y=0;
        return a;
    }
    long long d=extGcd(b,a%b,y,x);
    y-=x*(a/b);
    return d;
} 
//有整数解时当且仅当m是d的倍数时。

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


int main(){
    //具体操作....... 

    return 0;
}

你可能感兴趣的:(GCD/EXGCD/LCM)