(EX)CRT总结
这个东西是联赛的时候搞的,早就忘了,写篇博客复习一下
中国剩余定理(\(crt\))
给定\(a\)、\(m\)
\[ x\equiv a_1(mod\;m_1)\\ x\equiv a_2(mod\;m_2)\\ x\equiv a_3(mod\;m_3)\\ ...\\ x\equiv a_n(mod\;m_n) \]
保证所有\(m\)互质,要求\(x\)最小。
记一下结论算了
设
\[ M=\prod_{i=1}^nm_i \\ M_i=M/m_i\\ k_iM_i\equiv1(mod\;m_i) \]
则\(x=\sum_{i=1}^n(a_ik_iM_i)\;mod\;M\)
扩展中国剩余定理\((excrt)\)
同样还是上面那堆东西,但是不保证所有\(m\)互质了。
设我们解前\(k-1\)个方程组的解为\(x\),且\(M=\prod_{i=1}^{k-1}m_i\)
则前\(k-1\)个方程组的通解为\(x+i*M\)
对于第\(k\)个方程组,我们就是要求\(t\),使得\(x+t*M\equiv a_k(mod\;m_k)\)
转化一下上述式子,\(t*M\equiv a_k-x(mod\;m_k)\)
用\(exgcd\)解出\(t\),\(x_k=t*M+x\)