2016/5/25

韓信點兵

相傳漢高祖劉邦有天趁喝酒的時候問大將軍韓信統御兵士多少,韓信答說,每 3人一列餘1人、4人一列餘2人、5人一 列餘4人……。劉邦與張良都算不出來, 所以劉邦暫時不敢動手。 若假設已知人數將近一千,我們要如何知道韓信究竟有多少兵呢?


答:


用3除某數,餘數可能為0、1、2
用4除某數,餘數可能為0、1、2、3
用5除某數,餘數可能為0、1、2、3、4
出現相同餘數組合,是以每60個數為一循環,因為是3/4/5個餘數的最大公因數。
先找出第一個有1/2/4餘數組合的人數:
用5的倍數+4,有可能的數字: 9、14、19、24、29、34
其中只有34的餘數組合是1/2/4
1000 ÷ 60 = 40
60 × 40 + 34 = 994 (將近1000而未超過)
所以韓信有994名兵
用Excel 函數MOD列表驗算:

沒有留言: