中国剩余定理(CRT)

中国剩余定理,是用来求形如下面这样的同余方程组的 最小正整数解 的:

\[\left\{ \begin{array}{ll} x \equiv a_1 \pmod{m_1} \\ x \equiv a_2 \pmod{m_2} \\ \cdots \\ x \equiv a_n \pmod{m_n} \\ \end{array} \right. \]

其中,\(m_1,m_2,\cdots,m_n\) 两两互质。

出处

这玩意原本出自《孙子算经》卷下第二十六题:“有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?”

解法

我们设

\[M = \prod\limits_{i=1}^n m_i,M_i = \frac{M}{m_i} \]

然后,设 \(t_i\)\(M_i\) 在模 \(m_i\) 意义下的逆元,即 \(M_i t_i \equiv 1 \pmod{m_i}\)
对于上面的 \(i\)\(1 \le i \le n\)
然后,我们就可以构造出任意解

\[x_0 = \sum\limits_{i=1}^n a_i M_i t_i \]

最小正整数解就是

\[x_{min} = x_0 \bmod M \]

证明

这玩意的证明其实挺简单的……
首先,对于任意一个 \(j\)(\(1 \le j \le n\)\(j \not= i\))

\[a_j M_j t_j \equiv 0 \pmod{m_i} \]

这是显然的,因为\(m_i\)\(M_j\) 的因数。
然后,有

\[a_i M_i t_i \equiv a_i \pmod{m_i} \]

这也很明显……因为 \(M_i t_i \equiv 1 \pmod{m_i}\) 嘛。
于是,我们把所有的 \(a_i M_i t_i\) 加起来,也就是 \(x_0\),再结合上面的两个结论,就可以得到

\[x_0 \equiv a_i \pmod{m_i} \]

符合题意。

posted @ 2020-09-20 13:40  Mine_King  阅读(216)  评论(0编辑  收藏  举报