确实是在什么时候,已不很记得清楚了。大概说来,约在十六七年前吧,从一部旧小说上,也许是《镜花缘》,见到一个数学题的算法,觉得很巧妙,至今还不曾忘掉它。那是这样的,一个关于鸡兔同笼的问题,题上的数字现在已有点模糊,就算是一总十二个头,三十只脚,要求的便是那笼子里边,十二个当中,究竟有几只鸡有几只兔。
那书上的算法很简便,将一总的脚的数目三十折半,得十五,从这十五减去一总的头的数目一十二,剩的是三,这就是那笼子里面的兔的只数;再从一总的头数减去这兔的头数三,剩的是九,便是要求的鸡的数目。真是一点儿不差,三只兔和九只鸡,一共恰是十二个头,三十只脚。
这个算法,不但简便,而且仔细想一想,还很有些趣味。把三十折半,就无异将每只兔和每只鸡都顺着它们的背脊梁直分成两半,而每只只留一半在笼里。这么一来笼里的每半只死兔都只有两只脚,而死鸡每半只都只有一只脚了。至于头,鸡也许已被砍去一半,但既是头,正无妨就算它是一个。这就变成这么一个情景:每半只死鸡有一个头、一只脚,每半只死兔有一个头、两只脚,因此,一总的数目脚的还是比头的多。这所以多的原因,非常明白,全是从死兔的身上出来的,死鸡一点儿功劳没有。所以从十五减去十二余的三,就是每半只死兔留下一只脚,还多出来的脚的数目。然而每半只死兔只能多出一只脚来,所以多了三只脚就晓得笼里面有三个死的半只兔。原来,就应当有三只活的整兔。十二只里面去了三只还剩九只,这既不是兔,当然是鸡了。
这个题目是很平常的,几乎无论哪一本数学教科书只要一讲到四则问题,就离不了它。但数学教科书上的算法,比起小说上的来,实在笨得多。为了便当,这里也写了出来。头数一十二用二去乘,得二十四,从三十里减去它,得六。因为兔是四只脚,鸡是两只,所以每只兔比每只鸡所多出来的脚的数目是四减二,也就是二。用这二去除上面所得的六,恰好商三,这就是兔的只数。有了兔的只数,要求鸡的,那就和小说上的方法没有两样。
这法子,真有点呆!我记得,在小学读数学的时候,为了要用二去除六,而明明是脚除脚,忽然就变成脑壳,想了三天三夜还不曾想清白!现在,多吃过了一二十年的饭,总算明白了。这个题目的算法,总算懂得了。脚除脚,不过纸上谈兵,并不真的将一只脚去怎样弄别的一只,所以变成脑壳,变成整个的兔或鸡都没有什么关系。正和上面所说,将每只兔或鸡劈成两半一样,并非真用刀去劈,不过心里想想而已,所以劈了过后还活得过来,一点不伤于畜道!
我一直都觉得,这样的题目总是小说上说的来得有趣,来得便当。但近来,因了一些别的机缘,再将它们俩比较一看,结果却有些不同了。不但不同而已,简直是恰好全然相反了。从这里面还得到一个教训,那就是贪便宜,终于得到的是大不便宜。