高考自招,数学小品:韩信点兵算法及其原理

标签:
10高考自招复习推荐试题数学史古典算法经典算法韩信点兵原理教育 |
分类: 中学数学答疑室 |
10高考自招复习推荐·数学小品
韩信点兵算法及其原理
【问题】求最小非负整数N,使他在除以3,5,7以后所得余数分别是a,b,c。
【韩信点兵法的口诀】
【韩信点兵法口诀的释义】
前三句意思较为明确,假如说一个非负整数N,在除以3,5,7以后所得余数分别是a,b,c。那么70a+21b+15c
一定是符合题意要求的数。
第四句“除”字作“减”字解。因为符合要求的最小数N必满足0≤N<105,但是
70a+21b+15c
却有可能大于105,甚至大于210,所以还不一定是符合要求的最小数。那么当他大于或等于105时,还必须减去105,可能还要再减去105,直到比105小为止,才可以得到符合题意要求的最小数。
【说明】这里105是3,5,7的最小公倍数,70a+21b+15c + 105k
也一定满足“除以3,5,7以后所得余数分别是a,b,c”。
【例如】
a=b=c=2,70a+21b+15c=212,70a+21b+15c-105=107>105。
而符合题意要求的最小数是 2,即 212-105-105=2.
【再如】 a=2,b=4,c=6,70a+21b+15c=314,314-105=209>105。
而符合题意要求的最小数是 104,即 314-105-105=104.
【韩信点兵法口诀的原理】
①能被5,7除尽数是35k,其中k=2,即70除3正好余1,70a 除3正好余a。
②能被3,7除尽数是21k,其中k=1,即21除5正好余1,21b 除5正好余b。
③能被3,5除尽数是15k,其中k=1,即15除7正好余1,15c 除7正好余c。
这样——
根据①可知 70a+21b+15c 除3正好余a。
根据②可知 70a+21b+15c 除5正好余b。
根据③可知 70a+21b+15c 除7正好余c。
【韩信点兵法口诀的局限性】只适宜于如题所示的一个极为特殊的问题,要推广到同类问题必须另行制作口诀(即公式)。
【譬如】求最小非负整数N,使他在除以5,7,11以后所得余数分别是a,b,c。
【韩信点兵法口诀的原理】
①能被7,11除尽数是77k,其中k=3,即231除5正好余1,231a 除5正好余a。
②能被5,11除尽数是55k,其中k=6,即330除7正好余1,330b 除7正好余b。
③能被5,7除尽数是35k,其中k=6,即210除11正好余1,210c 除11正好余c。
那么 231a+330b+210c 除以5,7,11以后所得余数一定分别是a,b,c。
根据【符合要求的最小数N必满足0≤N<385】,所以当 231a+330b+210c 大于或等于385时,还必须减去若干个385 直到比385小为止,才可以得到符合题意要求的最小数。
【说明】这里385是5,7,11的最小公倍数,231a+330b+210c + 385k
也一定满足“除以5,7,11以后所得余数分别是a,b,c”。
【例如】求最小非负整数N,使他在除以5,7,11以后所得余数分别是3,5,7。
【解】231a+330b+210c=231×3+330×5+210×7=3813.
因为
3813>385,所以减去9个385后,得到比385小的 3813-9×385=348
就是符合题意的最小非负整数了。