生活 > 史海钩沉 > 正文

韩信点兵,多多益善

相传刘邦打下天下之后,害怕韩信造反,所以打算把他杀了,但是,又怕他带的士兵太多,所以问了一下韩信目前带了多少兵?韩信感觉气氛诡异,因此回答:“兵不知数,三三数之剩二,五五数之剩三,七七数之剩二”这个回答让刘邦不知所措,连军师张良一下子也算不出韩信到底带了多少土兵,所以韩信逃过了一劫。(其实韩信所带的兵,人数只有23人,刘邦跟张良算不出来以为是千万人,所以刘邦不敢轻举妄动了。)

而据《史记·淮阴侯列传》记载:有一次,汉高祖刘邦问韩信能统率多少军队?韩信说:“臣多多而善耳(我是越多越好)。”后来“多多益善”乃史家形容韩信治军之术,久而久之就流传著“韩信点兵,多多益善”的歇后语。后世便用来比喻不厌其多,愈多愈好了。

而韩信点兵也是一个很有趣的猜数游戏,你随便拿一把蚕豆(数目要在100粒以内)。假若3个一数余1粒,5个一数余2粒,7个一数余2粒,那么原有蚕豆多少?

这类题目看起来是很难计算的,可是中国古时却流传著一种算法,它的名称也很多,宋朝周密叫它“鬼谷算”,又名“隔墙算”;杨辉叫它“剪管术”;而比较通行的名称是“韩信点兵”。最初记述这类算法的是一本名叫“孙子算经”的书,后来在宋朝经过数学家秦九韶的推广,又发现了一种算法,叫做“大衍求一术”,流传到西洋以后,外国化称它是“中国剩余定理”,这在数学史上是极有名的问题。至于它的算法,在“孙子算经”上就已经有了说明,而且还流传著这么一首歌诀:

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

这就是韩信点兵的计算方法,它的意思是说:凡是用3个一数剩下的余数,将它用70去乘(因为70是5与7的倍数,而又是以3去除余1的),5个一数剩下的余数,将它用21去乘(因为21是 3与 7的倍数,又是以5去除余1的),7个一数剩下的余数,将它用15去乘(因为15是3与5的倍数,又是以 7去除余 1的),将这些数加起来,若超过105,就再减掉105,所得的数便是原来的数了。根据这个道理,你就可以很容易地把前面一个题目列成算式:

1×70+2×21+2×15-105=142-105=37。

因此你可以知道,原来这一堆豆有37粒。

责任编辑: 李冬琪  来源:转贴 转载请注明作者、出处並保持完整。

本文网址:https://www.aboluowang.com/2010/0328/162697.html