zoukankan      html  css  js  c++  java
  • 中国剩余定理(CRT)

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

    [left{ egin{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} ight. ]

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

    出处

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

    解法

    我们设

    [M = prodlimits_{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 = sumlimits_{i=1}^n a_i M_i t_i ]

    最小正整数解就是

    [x_{min} = x_0 mod M ]

    证明

    这玩意的证明其实挺简单的……
    首先,对于任意一个 (j)((1 le j le n)(j ot= 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} ]

    符合题意。

  • 相关阅读:
    nyist 287 Redar
    nyist 14 会场安排问题
    nyist 90 整数分割
    nyist 123 士兵杀敌四
    nyist 116 士兵杀敌
    nyist 277 车牌号
    nyist 590 相同的和
    寄宿于WindowsService的WebAPI
    C#Dictionary 字典、泛型
    Repository模式
  • 原文地址:https://www.cnblogs.com/mk-oi/p/13700036.html
Copyright © 2011-2022 走看看