- 欧几里得算法
public static long gcd(long m, long n) {
while (n != 0) {
long rem = m % n;
m = n;
n = rem;
}
return m;
}
- 幂运算
public static long pow(long x, long n) {
if (n == 0)
return 1;
if (n == 1)
return x;
if (n % 2 == 0)
return pow(x * x, n / 2);
else
return pow(x * x, n / 2) * x;
}