中国剩余定理
假设有方程组x = ai(mod mi), 其中所有的mi两两互素, 另M为所有mi的乘积, wi = M / mi, 则gcd(wi, mi) = 1, 用扩展gcd可以得到wipi + miqi = 1的解, 然后ei = wipi, 则方程组等价于
x = e1a1 + e2a2 + .... + enan (mod M), 即在模M下方程组有唯一解。

1 ll china(ll n, ll *a, ll *m) 2 { 3 ll M = 1, d, y, x = 0; 4 for(int i = 0; i < n; ++i) M *= m[i]; 5 for(int i = 0; i < n; ++i) 6 { 7 ll w = M / m[i]; 8 gcd(m[i], w, d, d, y); 9 x = (x + y * w * a[i]) % M; 10 } 11 return (x % M + M) % M; 12 }