int gcd(int x, int y) {
// return !y ? x : gcd(y, x % y); //简洁写法,原理:辗转相除法
if (y == 0) return x;
else return gcd(y, x % y);
}
最小公倍数lcm(x, y)= x / gcd(x, y) * y; // 写成 x * y / gcd(x, y) 可能溢出
int gcd(int x, int y) {
// return !y ? x : gcd(y, x % y); //简洁写法,原理:辗转相除法
if (y == 0) return x;
else return gcd(y, x % y);
}
最小公倍数lcm(x, y)= x / gcd(x, y) * y; // 写成 x * y / gcd(x, y) 可能溢出