中国剩余定理 理论介绍及代码实现

由来

中国剩余定理,别称 孙子定理中国余数定理,相传来自于中国古代数学研究著作《孙子算经》。

有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?

形式化上述问题,即求出最小正整数 m m m 同时满足

m ≡ 2 ( m o d 3 ) m ≡ 3 ( m o d 5 ) m ≡ 2 ( m o d 7 ) m \equiv 2 \pmod 3 \\ m \equiv 3 \pmod 5 \\ m \equiv 2 \pmod 7 \\ m2(mod3)m3(mod5)m2(mod7)

利用 枚举法,我们分别枚举满足单个条件的正整数共 3 3 3 组,可以发现 23 23 23 是同时满足所有条件的最小正整数。

3 n + 2 = ( 2 , 5 , 8 , 11 , 14 , 17 , 20 , 23 , 26 , 29 , 32 …   ) 5 n + 3 = ( 3 , 8 , 13 , 18 , 23 , 28 …   ) 7 n + 2 = ( 2 , 9 , 16 , 23 , 30 …   ) \begin{aligned} 3n + 2 &= (2, 5, 8, 11, 14, 17, 20, \textbf{23}, 26, 29, 32 \dots) \\ 5n + 3 &= (3, 8, 13, 18, \textbf{23}, 28 \dots) \\ 7n + 2 &= (2, 9, 16, \textbf{23}, 30 \dots) \\ \end{aligned} 3n+25n+37n+2=(2,5,8,11,14,17,20,23,26,29,32)=(3,8,13,18,23,28)=(2,9,16,23,30)

而中国宋朝数学家 秦九韶 在《数学九章》中提出了更为系统的解答,中国明朝数学家 程大位 则将其编成《孙子歌诀》:

三人同行七十希,五树梅花廿一支,七子团圆正半月,除百零五便得知

意思是将除以 3 的余数乘以 70,将除以 5 的余数乘以 21,将除以 7 的余数乘以 15,然后再减去一个 105 的倍数,得到:

70 × 2 + 21 × 3 + 15 × 2 = 233 = 105 × 2 + 23 70 \times 2 + 21 \times 3 + 15 \times 2 = 233 = 105 \times 2 + 23 70×2+21×3+15×2=233=105×

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值