經(jīng)典真假金幣題升級版
今天有點無聊,想起來一道很老的金幣題,大家想必都見過,題目是這樣的:
“現(xiàn)在有10袋金幣,其中有一袋金幣是假的,已知一枚真金幣10g,一枚假金幣比真金幣少1g,假設(shè)現(xiàn)在你手上有一個電子秤可以稱出物體的重量,最少需要稱幾次才能知道哪袋是假金幣?”
這題算是非常經(jīng)典的了,所以解答我就不說了,我打算升級一下。
“現(xiàn)在對于上面那道題,如果不知道真金幣的重量,也不知道假金幣的重量(而且真假金幣哪個更重也不知道),那最少需要稱幾次才能知道哪袋是假金幣?”
大家可以先思考一下,解答在下面↓↓↓↓

我的個人解答如下:
首先,把10袋金幣依次編號1~10號(貼標(biāo)簽)
然后,設(shè)真金幣的重量為x克,假金幣與真金幣的重量差值為y克,假金幣的袋數(shù)編號為z,每次用電子秤測量的讀數(shù)分別為α、β、δ、ε(以此類推,希臘字母)
接著,我們先從第1袋拿出一枚金幣,第2袋拿出兩枚金幣,第3袋拿出三枚金幣……第10袋拿出十個金幣,然后把這55個金幣放到電子秤上,記下讀數(shù)α,由此可以得出以下方程:? ? ? ??
? ? ? ? ?
? ? ? ? ? ? ? ? ??? 55x+zy= α?? ? ? ?①
接著我們再從每個袋子里拿出一枚金幣,放在剛才有55個金幣的電子秤上,進(jìn)行第二次稱重,并記下讀數(shù)β,由此可以得出以下方程:
? ? ? ? ?
? ? ? ? ? ? ? ? ?? 65x+(z+1)y=β?? ? ?②
此時大家不難看出,由于兩個方程中α和β為已知量,所以我們只要再通過一次稱重,得出一個與x,y,z有關(guān)的方程,便可以組成一個三元一次方程組,但這是不可能的,接下來不論如何稱重,都無法得出一個有用的方程。
大家首先想到的肯定是如法炮制,再從每個袋子里拿出一個金幣,然后得到方程:
? ? ? ? ? ? ? ? ? 75x+(z+2)y=δ? ?③
但這個方程是無效的,因為把③-②就得到了? 10x+y=δ-β,但早在一開始得出①②兩個方程的時候,這種方法就已經(jīng)用過了,把②-①也會得到10x+y=β-α,所以方程③是沒有用的。
那么可能還會有人這么想: 既然這個把戲玩不通了,那就換一個,比如從第1袋拿出兩個金幣,第2袋拿出四個金幣……第10袋拿出二十個金幣,就得到方程:
? ? ? ? ? ? ? ? ?? ? 110x+2zy=ε? ?④
很遺憾,這種方法也是無效的,因為這種方法只剩單純把方程①乘以2的結(jié)果,我們甚至可以得出ε=2α,對于這種可以預(yù)知接下來稱出金幣具體重量的方法,是沒有用的,不信你代入方程組中算一下就知道了。
那么,現(xiàn)在我們似乎已經(jīng)江郎才盡了,關(guān)鍵是題目一開始的條件給的太少了,所以,我個人最終也只想到一種最樸素的方法,首先,我們手上有兩個有用的方程:
? ? ? ? ? ? ? ? ? ?? 55x+zy= α? ? ①
? ? ? ? ? ? ? ? ??? 65x+(z+1)y=β?? ? ?②
我在想,如果x,y,z中如果有一個是已知量,那么這不就是一個二元一次方程組嗎?可是如何知道其中一個量呢?我覺得從x入手是唯一的辦法。
我的做法是這樣的:
把剛才電子秤上的金幣全都放回原來的袋子里,然后從第一袋中拿出1個金幣放在電子秤上測出讀數(shù)后放回去,再從第二個袋子拿出1個金幣測出讀數(shù)后放回去?,F(xiàn)在,如果兩個金幣質(zhì)量相等的話,那么我就成功得到真金幣x的值了,再代入①②,解出這個二元一次方程組就得到z了。(注:由于不知道真假金幣哪個更重,所以解出的y有可能是正數(shù)也可能是負(fù)數(shù))?
但假設(shè)我們運氣差,剛剛兩個金幣質(zhì)量不相等,那也就是說這兩個金幣一真一假,那我們也只需要再從第三個袋子拿出一個金幣測出讀數(shù)后,剛才那兩個金幣肯定有一個質(zhì)量不等于第三個金幣,那么那個金幣所對應(yīng)的袋子就都是假金幣。也就是說,如果運氣差,我們也只需要多測一次就行了。
整理: 運氣好的話,剛剛那兩袋+①②兩個方程所測的兩次,一共4次就可以找出假金幣;若運氣差的話,則多一次,即5次就可以找出假金幣。
綜上所述: 最少需要稱5次才能知道哪袋是假金幣。
(這里題目問的是“最少”,所以要做最壞的打算,如果我的運氣爆棚的話,我甚至不需要任何數(shù)學(xué)方法,我如果運氣好前兩次測出來不相等,第三次再測肯定就知道假金幣哪袋了,要真運氣這么好早去買彩票了)
這個文章里的方法是我自己想的,如果大佬們有更好的解法歡迎分享在評論區(qū)。