最大公约数与最小公倍数

算法思想

  最大公约数gcd:辗转相除法,最小公倍数lcm:易证当d=gcd(a,b)时,lcm(a,b)=a*b/d,由于先计算ab有可能出现溢出,所以更安全的写法是a/d*b

 

//a>b否则交换a,b
int gcd(int a,int b){
     if(b==0)return a;
    else return gcd(b,a%b);       
}

int Gcd = a>b?gcd(a,b):gcd(b,a);


int lcm = a / d * b;
posted @ 2020-09-25 10:32  tao10203  阅读(76)  评论(0)    收藏  举报