最大公因数与最小公倍数
最大公因数模板
位运算:
inline int gcd(int a,int b)
{
if(!a) return b;
if(!b) return a;
while(b^=a^=b^=a%=b);
return a;
}
递推
inline int gcd(int a,int b)
{
int r;
while(b>0)
{
r=a%b;
a=b;
b=r;
}
return a;
}
普通
inline int gcd(int a,int b)
{
return b>0 ? gcd(b,a%b):a;
}
最小公倍数模板
需要和最大公因数函数共同使用
inline int lcm(int a,int b)
{
return a/gcd(a,b)*b;
}

浙公网安备 33010602011771号