GCD 求最大公約數函數
方法總結
- 遞歸版
int gcd(int x, int y)
{
if(y==0) return x;
return gcd(y, x%y);
}
- 簡潔遞歸版
int gcd(int x, int y)
{
return y>0? gcd(y, x%y) : x;
}
- 非遞歸版
int gcd(int x, int y)
{
int tmp;
while(y>0)
{
tmp=x%y;
x=y;
y=tmp;
}
return x;
}
- \(algorithm.h\)頭文件中的函數
__gcd(x, y) //注意是兩個下划線,這個可以直接調用,返回x和y的最大公約數
//但是有些oj上不支持這個,還有說這個函數不是標准函數,需要注意。