只许称一次

在一本很好的趣味数学书中有一道题的题目叫作"只许称一次"。我们也选用同样的题目是由于我们想对那本书中对该题给出的答案作一点儿补充,以便使那本深受少年朋友喜爱的书更臻完美。

   原题是这样的:

   一袋一袋的洗衣粉堆成十堆,九堆洗衣粉是合格产品,每袋1斤。唯独有一堆分量不足,每袋只有9两。从外形上看,看不出哪一堆是9两的。用台称一堆一堆去称吧,称的次数比较多。有人找到一个办法,只称了一次,就找到了9两的那一堆。这是个什么办法呢?如果有四十堆洗衣粉,其中有一堆是9两一袋的,那么要称几次才能找出这一堆?

   原书的解答是这样的:

   你注意过乘法口诀的特点吗?一个数乘9,乘积中的个位数,没有相同的数:0×9=0,1×9=9,2×9=18,3×9=27,4×9=36,5×9=45,6×9=54,7×9=63,8×9=72,9×9=81。称洗衣粉就要用到这个特点。

   将十堆洗衣粉编上号码:1,2,3,4,5,6,7,8,9,10。从第1堆取一袋洗衣粉,从第2堆取两袋,从第3堆取三袋,…,从第9堆取九袋,第10堆不取。把取出来的洗衣粉用秤称一下,只注意总重量几斤几两的两数,如果是3两,就知道第7堆是九两一袋。如果是0两,那是第几堆呢?请你再想一想。

   如果有四十堆,就要称三次。第一次先从二十堆中每堆中取出一袋一起称。如果重量是20斤,说明九两的那堆在剩下的二十堆中。不然,就在这二十堆中。第二次再从包含九两一堆的二十堆中选取十堆,每堆取一袋在台称上称。从重量是否10斤,就可以确定九两一堆的在哪十堆中。第三次,将包括九两一堆的十堆按照前面的办法称一次,就确定了哪一堆是九两的。

    上述解法启发学生们注意9的倍数的个位数字的规律,应该说是很好的。但是这种方法只适用于堆数不超过10的情况。如果堆数在10以上,仍然从第几堆就拿出几袋一起称,光注意总重量是几斤零几两的两数就不行了。比如,2×9=18,12×9=108,18与108的个位数字都是8。如果称出的总重量几斤几两的两数是8两,就判断不出是第2堆还是第12堆是九两一袋的。正因如此,上述解答告诉我们:如果有四十堆洗衣粉,就要称三次。

   比如一共有四十堆,给它们分别编上号码1,2,3,4,…,37,38,39,40。然后,每堆的编号是几,就从其中拿出几袋洗衣粉,放在台秤上称总重量。

   台秤上一共有多少袋洗衣粉呢?

       1+2+3+4+…+37+38+39+40

       =(1+40)×20 =820,

台秤上一共有820袋洗衣粉。

   如果四十堆洗衣粉都是合格品,也就是说每一堆中的每一袋都恰好是一斤,那么台秤上的洗衣粉的总重量应该是820斤。

   但是现在已知"唯独有一堆"分量不足,每袋只有九两,因而台秤上的820袋洗衣粉的总重量必定不够820斤。

   我们注意台秤上洗衣粉的总重量,不仅要注意零头是几两,而且要准确地注意是多少斤多少两,再算一下这个总重量比820斤一共少几两。少几两就说明台秤上有几袋是九两一袋的,于是我们就能知道哪一堆是九两一袋的。

   为了减少麻烦,最后通牒一堆也可以一袋都不取,只从前面三十九堆中是第几堆就取几袋一起放到台秤上称。这样,台称上总共就有780袋洗衣粉。如果称得的总重量恰好是780斤,就说明最后一堆是九两一袋的。如果总重量不够780斤,那么,比780斤少几两,第几堆就是九两一袋的。

   如果一共不是有四十堆洗衣粉,而是一共有十堆、二十堆,或者三十堆、五十堆,只要每一堆洗衣粉都有足够多袋,而且台秤足够大、足够准,都可以用这样的方法称一次就把那堆九两一袋的找出来。