陳丹陽
韓信是漢初名將,民間流傳一句歇后語“韓信點兵——多多益善”,用來形容韓信的軍事才能。有意思的是,“韓信點兵”也是一個流傳很廣的數(shù)學(xué)問題。據(jù)說韓信在點兵的時候,會先讓士兵三人站成一排,記下最后多出的人數(shù);再讓士兵五人站成一排,又記下最后多出的人數(shù);最后讓士兵七人站成一排,同樣記下最后多出的人數(shù)。這樣他就能算出自己部隊的總?cè)藬?shù)了。
在我國,“韓信點兵”問題最早出現(xiàn)在南北朝時期的數(shù)學(xué)著作《孫子算經(jīng)》中,叫作“物不知數(shù)”問題:“一個整數(shù)除以三余二,除以五余三,除以七余二,求這個整數(shù)?!边@個問題因此也被稱為“孫子問題”。此類問題在現(xiàn)代數(shù)學(xué)中叫作“一次同余問題”,其解法稱為“中國剩余定理”或“孫子定理”。
宋代數(shù)學(xué)家秦九韶在《數(shù)書九章》中對這個問題作出了完整系統(tǒng)的解答,稱為“大衍求一術(shù)”。明代數(shù)學(xué)家程大位則在《算法統(tǒng)宗》中將它的解法編成易于上口的歌訣:“三人同行七十稀,五樹梅花廿一支,七子團(tuán)圓正半月,除百零五使得知?!彼囊馑际牵簩⒊匀玫降挠鄶?shù)乘以七十,除以五得到的余數(shù)乘以二十一,除以七得到的余數(shù)乘以十五,全部加起來后減去一百零五(或者一百零五的倍數(shù)),得到的余數(shù)就是最后的答案。按照這個方法,《孫子算經(jīng)》中“物不知數(shù)”問題的最小答案是二十三。
(亞白摘自中華書局《中國人應(yīng)知的古代科技常識》)