中国剩余定理

博客围绕中国剩余定理展开,以“有物不知其数”问题引入,介绍了该定理对应的方程组。给出了公式,包括最小公倍数M、Mi及数论倒数ti的计算,还得出通解表达式。最后对定理进行了简单证明,利用同余性质推导得出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

中国剩余定理

前言

有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。

公式

上面一段话可以理解成如下方程组:
整数m1,m2, … ,mn两两互质,则对任意的整数:a1,a2, … ,an,方程组有解
在这里插入图片描述

  1. 令M=m1 * m2 * m3 * … * mn,M为最小公倍数,并设Mi = M/mi,为除了mi外n-1个数的乘积。(1 <= i <= n)
  2. 设 ti=Mi-1 为Mi的数论倒数,(ti 为 Mi 模 mi 意义下的逆元),
    即ti * Mi=1(mod mi),ti 可以由扩展gcd求得,将式子化成如下形式用扩展gcd(扩展gcd传送门):
    (ti * Mi)%mi=1
    => ti * Mi - mi * (ti * Mi) / mi=1
    a=ti,b=-(ti * Mi) / mi,x=Mi,y=(ti * Mi) / mi
    则原式为a * x+b * y=1,于是直接上exgcd
  3. 则S的通解为:
    x=a1 * t1 * M1+a2 * t2 * Mi+ … +an * tn * Mi+kM =kM+ ∑ i = 1 n \sum^{n}_{i=1} i=1nai * ti * Mi(k为整数)
    在模M的情况下
    x=( ∑ i = 1 n \sum^{n}_{i=1} i=1nai * ti * Mi)%M
证明

证明有点烦,于是偷懒百度一张图
由于上图已经很详细了,下面只给出简单证明:
ti * Mi≡1(mod mi)
两边同时乘ai
ai * ti * Mi≡ai * ≡ai (mod mi)
因为 M m i \frac{M}{mi} miM为除了mi以外的所有m的倍数
所以 ∀ j ≠ i \forall j \neq i j̸=i,ai​ M m i \frac{M}{mi} miM​ti​ ≡ 0(mod mj​)
所以
x=ai * ti * Mi+ ∑ j ≠ i \sum^{}_{j\neq i} j̸=iaj * tj *Mj≡ai + 0≡ai(mod mi)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值