算法起步,遇到的简单的问题有的都是求一些最大公约数或者最小公倍数。

欧几里得算法就是辗转相除。

求a与b的最大公约数。

a%b=c(取余数,a>=b)

若c=0 gcd(a,b)=b;

若c≠0 gcd(a,b)=gcd(b,c);

直到等于零为止。

int gcd(int a,int b){

  if(a<b) return gcd(b,a);

  return b?b:gcd(b,a%b);

}

posted on 2019-03-09 17:48  桐亚  阅读(280)  评论(0)    收藏  举报