寫一下中國剩余定理的證明
中國剩余定理
簡單記錄一下推倒過程吧。
搞這種方程的。
\(x\%m_1=c_1,x\%m_2=c_2,x\%m_3=c_3..........\)
EXCRT
先來表演,將兩個方程合並:
\(x\%m_1=c_1\), \(x\%m_2=c_2\)
Duang!Duang!
\(x=k_1m_1+c_1=k_2m_2+c_2\)
\(k_1m_1-k_2m_2=c_2-c_1\)
令\(g=gcd(m_1,m_2)\),有\(k_1\frac{m_1}{g}-k_2\frac{m_2}{g} = \frac{c_2-c_1}{g}\)
在模\(\frac{m_2}{g}\)系下:\(\frac{m_1}{g}k_1= \frac{c_2-c_1}{g}\)
解得\(k_1=\frac{c_2-c_1}{g}*inv(\frac{m_1}{g},\frac{m_2}{g}) + k\frac{m_2}{g}\)
即\(x=[\frac{c_2-c_1}{g}*inv(\frac{m_1}{g},\frac{m_2}{g}) m_1+c_1]+k\frac{m_1m_2}{g}\)
好了,兩個同余方程就這麽合並了。然後我們對於那\(n\)個方程合並\(n-1\)次,就是EXCRT了
emmm. 同余方程的合並和生成樹這種東西,是不是可以珠聯璧合。然後搞出什麽有趣的東西啊。
CRT
這個一點也不好用,還得保證\(m_1,m_2...\)兩兩互質。
有種暴力構造的感覺。
直接給答案啦\(x=\sum c_i\frac{M}{m_i}inv(\frac{M}{m_i},m_i)\)
因為在模\(m_i\)系下\(\frac{M}{m_i}inv(\frac{M}{m_i},m_i)=1\)
所以當且僅當\(i=x\)時,\(c_i\frac{M}{m_i}inv(\frac{M}{m_i},m_i)\%m_x=c_x\),否則\(c_i\frac{M}{m_i}inv(\frac{M}{m_i},m_i)\%m_x=0\)
問:為什麽要求兩兩互質啊?
答:不互質,求個錘子逆元吖!
寫一下中國剩余定理的證明