“余米推数”的一种简易解法 “余米推数”问题是秦九韶在他的《数书九章》第一章大衍中提出的,由于题目构思奇趣,引人入胜,为历代数学爱好者所喜爱。 原题是: 问有米铺诉被盗去米一般三箩,皆适满,不记细数。今左壁箩剩一合,中间箩剩一升四合,右壁箩剩一合。后获贼,系甲、乙、丙三名。甲称当夜摸得马勺,在左壁箩满舀入布袋;乙称踢着木履,在中箩舀入袋;丙称摸得漆碗,在右边箩舀入袋;将归食用,日久不知数。索得三器:马勺满容一升九合;木履容一升七合;漆碗一升二合。欲知米数,计赃结断三盗各几何? 题目大意是:有米铺老板报案说,他的米铺被盗了。但到底被盗去多少米,他也说不清,只知道米是用三个箩装的,正好都装满了,每个箩中米都一样多。现在靠左墙那个箩中只剩下一合米了,中间那个箩剩一升四合,靠右墙那个箩剩一合。后来小偷都抓到了。审讯时,小偷甲说,那天晚上我摸到一个马勺,就用它在左边那箩中往布袋里舀米,每次都舀满了;小偷乙说,我踢着一只木履,就用它在中间那个箩中舀米装袋,每次也都舀满了;小偷丙说,我摸到一只漆碗,就用碗在右边箩中舀米入袋,每次也都舀满了。当问到他们各偷去多少米时,又都说不清了,只说拿回家就吃,现在时间已久了,也不知吃了多少。找来三件作案工具测量的结果是:马勺装满为一升九合,木履装满是一升七合,漆碗装满是一升二合。现在要根据这些线索推断出米铺失盗的米数、并分别推断出三小偷各偷去多少米?(注:1升=10合) 实际上,这道题的关键是要先求出每个箩中装了多少米。知道了每个箩中的装米量,分别减去1、14、1就能得出三小偷各盗去了多少米,顺此又能求出米铺的失米数。 分析线索理清头绪知,左壁箩每次取出19合(1升9),最后剩1合,可理解为箩中的米数被19除后余1;同理,中间箩的米数被17除后余14;右壁箩米数被12除后余1。 简单地说,就是要回答一个这样的问题;某数被19、17、12除,得到的余数分别是1、14、1,求这个数。 当年,秦九韶是用大衍求一术解决这个问题的。但大衍求一术解题过程繁琐,且难以掌握。 用现代数学语言来说,设这个数是M(每箩的米数),就是求以下一次同余式方程组的解: M≡1(mod19) M≡14(mod17) M≡1(mod12) 解得M的最小值是M=3193。当然,同余式是个能系统地解决同余问题的一般方法,但是,解题过程仍很复杂。 特殊问题特殊对待。上题中由于19与12是互质数,箩中的米数除以19、12,余数都是1,所以,题目可简化为:某数被19与12的公倍数及17除,余数分别是1、14,求这个数。 于是,用一个较简单的二元一次不定方程,可轻松解决这个问题。设这个数是M,k、y为某正整数。依题意得方程组 M=19×12k+1 M=17y+14 实际就是要解以下二元一次不定方程 228k+1=17y+14 化简得 y=13k+(7k-13)/17 ∵ y、k是正整数, ∴ (7k-13)/17是正整数。 令 (7k-13)/17=q(q是正整数) 得 k=2q+(3q+13)/7 当q=5时,k值最小是 k=2×5+(3×5+13)/7=14 此时,M有最小值是 M=228×14+1=3193 (这个值合符题意) 据此,算出米铺共失米数及三小偷各盗得的米数是 3193×3-(1+14+1)=9563(合) 3193-1=3192(合) 3193-14=3179(合) 3193-1=3192(合) 不定方程本有无数个解,本题单取最小值,是根据题意来定的。试想:一只箩能装多少?一个人一次又能搬动多少? |
|