中国数学剩余定理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中国数学剩余定理相关的知识,希望对你有一定的参考价值。

中国剩余定理,又叫中国余数定理,是数论中的一个关于一元线性同余方程组的定理,说明了一元线性同余方程组有解的准则以及求解的方法。也称为孙子定理,古有"韩信点兵","孙子定理","求一术"(宋沈括),"鬼谷算","隔墙算","剪管术"(宋杨辉),"秦王暗点兵"之名。
原文如下:
有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余二,除以五余三,除以七余二,求这个整数
解答方法:三人同行七十希,五树梅花廿一枝,七子团圆正半月,除百零五便得知。
意思是:将除以3得余数乘以70,将除以5得余数乘以21,将除以7得余数乘以15,全部加起来后再减去105或105的整倍数,得到的数就是答案。
70X2+21x3+15x2=233=105x2+23,
结果就是23。
解法举例:
例一:一个数,除以5余1,除以3余2。问这个数最小是多少?
采用通用的方法:逐步满足法
把除以5余1的数从小到大排列:1,6,11,16,21,26,……
然后从小到大找除以3余2的,发现最小的是11.
所以11就是所求的数。
先满足一个条件,再满足另一个条件,所以称之为“逐步满足法”。
例二:一个数除以5余1,除以3也余1。问这个数最小是多少?(1除外)
特殊的方法:最小公倍法
除以5余1:说明这个数减去1后是5的倍数。
除以3余1:说明这个数减去1后也是3的倍数。
所以,这个数减去1后是3和5的公倍数。要求最小,所以这个数减去1后就是3和5的最小公倍数。即这个数减去1后是15,所以这个数是15+1=16.
例三:一个数除以5余4,除以3余2。问这个数最小是多少?
这种情况也可以用最小公倍法。
数除以5余4,说明这个数加上1后是5的倍数。
数除以3余2,说明这个数加上1后也是3的倍数。
所以,这个数加上1后是3和5的公倍数。要求最小,所以这个数加上1后就是3和5的最小公倍数。即这个数加上1后是15,所以这个数是15-1=14。
多个数的,比如3个数的,有时候其中两个可以用特殊法,那就先用特殊法,用特殊法求出满足两个条件的数后再用通用的方法求满足最后一个条件的数。
例四:有1个数,除以7余2.除以8余4,除以9余3,这个数至少是多少?
除以7余2的数可以写成7n+2。
7n+2这样的数除以8余4,由于2除以8余2,所以要求7n除以8余2。
7n除以8余2,7除以8余7,要求n除以8余6(乘数之余等于余数之乘),则n最小取6。
所以满足“除以7余2,除以8余4”的最小的数是7×6+2=44,
所有满足“除以7余2,除以8余4”的数都可以写成44+56×m。
要求44+56×m除以9余3,由于44除以9余8,所以要求56×m除以9余4。(加数之余等于余数之加)
56×m除以9余4,由于56除以9余2,所以要求m除以9余2(乘数之余等于余数之乘),则m最小取2。
所以满足“除以7余2,除以8余4,除以9余3”的最小的数是44+56×2=156。
例五:三三数之剩二,五五数之剩三,七七数之剩二。问物几何?
即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。
除以3余2和除以7余2的数可以写成21n+2。
21n+2除以5余3,要求21n除以5余1。
21n除以5余1,21除以5余1,要求n除以5余1(乘数之余等于余数之乘),则n最小取1。
所以满足“除以3余2,除以5余3,除以7余2”的最小的数是21×1+2=23。
标准解法:先从3和5、3和7、5和7的公倍数中相应地找出分别被7、5、3除均余1的较小数15、21、70 ( 注释:此步又称为求"模逆"运算,利用扩展欧几里得法并借助计算机编程可比较快速地求得.当然,对于很小的数,可以直接死算 )。即
15÷7=2……余1,
21÷5=4……余1,
70÷3=23……余1.
再用找到的三个较小数分别乘以所要求的数被7、5、3除所得的余数的积连加,
15×2+21×3+70×2=233. (将233处用i代替,用程序可以求出)
最后用和233除以3、5、7三个除数的最小公倍数.
233÷105=2……余23,
这个余数23就是合乎条件的最小数.
例六:一个数被5除余2,被6除少2,被7除少3,这个数最小是多少?
题目可以看成,被5除余2,被6除余4,被7除余4 。看到那个“被6除余4,被7除余4”了么,有同余数的话,只要求出6和7的最小公倍数,再加上4,就是满足后面条件的数了,6X7+4=46。
下面一步试下46能不能满足第一个条件“一个数被5除余2”。不行的话,只要再46加上6和7的最小公倍数42,一直加到能满足“一个数被5除余2”。这步的原因是,42是6和7的最小公倍数,再怎么加都会满足“被6除余4,被7除余4”的条件。
46+42=88
46+42+42=130
46+42+42+42=172
这个数最小是172.
参考技术A 原文如下:
有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余二,除以五余三,除以七余二,求这个整数
解答方法:三人同行七十希,五树梅花廿一枝,七子团圆正半月,除百零五便得知。
意思是:将除以3得余数乘以70,将除以5得余数乘以21,将除以7得余数乘以15,全部加起来后再减去105或105的整倍数,得到的数就是答案。
70X2+21x3+15x2=233=105x2+23,
结果就是23。
解法举例:
例一:一个数,除以5余1,除以3余2。问这个数最小是多少?
采用通用的方法:逐步满足法
把除以5余1的数从小到大排列:1,6,11,16,21,26,……
然后从小到大找除以3余2的,发现最小的是11.
所以11就是所求的数。
先满足一个条件,再满足另一个条件,所以称之为“逐步满足法”。
例二:一个数除以5余1,除以3也余1。问这个数最小是多少?(1除外)
特殊的方法:最小公倍法
除以5余1:说明这个数减去1后是5的倍数。
除以3余1:说明这个数减去1后也是3的倍数。
所以,这个数减去1后是3和5的公倍数。要求最小,所以这个数减去1后就是3和5的最小公倍数。即这个数减去1后是15,所以这个数是15+1=16.

数学数论拓展中国剩余定理

写在前面

  记录了个人的学习过程,同时方便复习

 

  • 拓展中国剩余定理

  [?]中国剩余定理仅仅适用于每个模数两两互质的情况

  但是最常见的情况还是所有模数不满足两两互质

  这样的话,中国剩余定理就不再适用

  需要使用拓展中国剩余定理

 

  中国剩余定理的思路是整体处理

  但是当模数不满足两两互素时,就不能处理其中关键的一步:

技术分享图片

(详见[?]中国剩余定理)

  不满足两两互素,即某些模数之间的最大公因数不是1,解出的方程余数不为1

 

  所以拓展中国剩余定理使用的是另一种思路:

  逐个处理,直至出现无解情况或者结束!

以上是关于中国数学剩余定理的主要内容,如果未能解决你的问题,请参考以下文章

什么叫中国剩余定理

[数学][中国剩余定理]Leapfrog

信息安全数学基础中国剩余定理

bzoj 1951: [Sdoi2010]古代猪文 中国剩余定理+欧拉定理+组合数学+卢卡斯定理

中国剩余定理

中国剩余定理CRT及 扩展中国剩余定理扩展CRT