中国剩余定理(crt)
求解同余方程组${x=a_i (mod b_i)$,要求$b_i$互质
有公式$x = sum{a_iM_it_i} , lcm是b的最小公倍数, M_i=lcm/b_i , t_i=M_i^{-1}(mod b_i)$
因为感觉被excrt完爆所以看看得了233
扩展中国剩余定理(?)(excrt)
$b_i$可以不互质
考虑已经满足了前i-1个方程的解ans,前i个b的lcm是M
那么前i-1个方程的通解就是$ans+kM$
那么对于第i个方程,有$ans+Mx=a_i (mod b_i)$,可以用exgcd求解
然后更新ans和M,继续做即可
1 ll ans=0,M=1; 2 for(i=1;i<=N;i++){ 3 ll x,y,a=M,b=B[i]; 4 ll c=((A[i]-ans)%b+b)%b,g=exgcd(a,b,x,y); 5 x=slowmul(x,c/g,b/g); 6 ans=ans+M*x;M*=b/g; 7 ans=(ans%M+M)%M; 8 }