[兩個50元硬幣,一真一偽,你會分辨嗎?圖取自http://www.libertytimes.com.tw/2009/new/oct/19/today-center2.htm]
>[沒帳號也可匿名推]
分享
12枚金幣有一不知或輕或重偽幣之解
部落格上政論文寫多了,除了政治、經濟、歷史、推背圖外,筆者對科學的東西也是興趣濃厚,像是算算詐胡線出包相關機率,有時也想把生活中的點滴分享給網友。話說在1月30日當天,有人熊熊問筆者一個問題:『有十二枚金幣, 其中一枚是偽幣, 重量與真幣不同, 但不知偽幣比較重或比較輕, 現有天平一座, 可以使用三次找出偽幣是哪一枚? 並比真幣輕或重嗎? 』,筆者想了好一陣子解出了。本來這個問題,網路是有詳解的,如果想偷懶用Google一下,應該是可以得到答案的。不過自己去想,得到答案的,那種喜悅,還是比較有意思的。
筆者把這個問題分別PO在Plurk、Facebook上,有網友野芭樂x堅持xsspiggy、ㄧ中同學s和Hubert Yu po出解,在此必須對此3位網友表示敬意,文中並列出解答,以示Honor之意!
其實筆者解答這個問題的過程,是企圖找出更為一般的情況,看能不能把一般的情況reduce到幾種簡易的case,甚至發展出個Algorithm。像是「12枚金幣有一不知或輕或重偽幣」的問題就可能衍生「n枚金幣有一不知或輕或重偽幣」、「n枚金幣有一已知或輕或重偽幣」以及「n枚金幣有一或輕或重偽幣,再加上若干可用的已知真幣」等等。主要的工具是天平,量一次可能有三種結果:『重於、輕於、等於』,在不知偽幣輕重下,應該是要用「三分法」,如果已知偽幣是較輕或較重,當然可用「二分法」,筆者把原始問題
「12枚金幣有一不知或輕或重偽幣」以符號 P(12, 偽幣輕重不知) 表之。
當金幣數多時,每測量一次,就會得到一堆等式或不等式,再想辦法解出。然而其中幾個簡易case應該馬上可解:
P(3,偽幣輕重不知) 僅需量2次
解:令三金幣重量分為X,Y,Z。量X, Y:
1. 如果X=Y則Z為偽幣。
2. 如果X重於Y,量X, Z
2.1. 如果X重於Z,X是偽幣。
2.2. 如果X=Z,Y是偽幣。
P(4,偽幣輕重不知) 僅需量2次
解:令4金幣重量分為X1,X2,A,B。量 X1, X2:
1. 如果 X1=X2 則偽幣為A或B
1.1. 量X1, A IF X1=A THEN 偽幣=B
1.2. ELSE 偽幣= A
2. 如果 X1重於X2 量X1, A
2.1. IF X1=A THEN 偽幣=X2
2.2. ELSE 偽幣=A
3. 如果 X1輕於X2 類似case 2.
筆者所提供詳解:
延展閱讀
1.把12金幣分成3堆A,B, C,重量分別為A1,A2,A3,A4,
B1,B2,B3,B4, C1,C2,C3,C4。
2.量A, B
3.IF 重量(A)=重量(B) THEN
4. 偽幣在C中,較輕較重未知
5. P(4,偽幣輕重不知)
6. 得解
7.ELSE IF A重於 B (較重堆為A ,較輕堆為B) THEN
8. 偽幣 在A,B中,C中全為真幣,每顆重量均為x
9. 量 A1+A2+B1+B2, A3+B3+C1+C2
10. IF A1+A2+B1+B2=A3+B3+C1+C2 THEN
11. A3=B1=B2=B3=A1=A2=x為真幣, 偽幣為A4或B4
12 量A4, C1
13 IF A4=C1 THEN 偽幣=B4 ELSE 偽幣=A4
14. ELSE IF A1+A2+B1+B2重於A3+B3+C1+C2 THEN
15. A3=A4=B1=B2=B4=x為真幣,偽幣於A1,A2,B3中
16. 量A1, A2
17. CASE A1=A2: 偽幣=B3
18. CASE A1重於A2: 偽幣=A1
19. CASE A1輕於A2: 偽幣=A2
20. ELSE 即 A1+A2+B1+B2輕於A3+B3+C1+C2
21. A1=A2=B3=A4=B4=x為真幣,偽幣於A3,B1,B2中
22. 量B1, B2
23. CASE B1=B2: 偽幣=A3
24. CASE B1重於B2: 偽幣=B2
25. CASE B1輕於B2: 偽幣=B1
Honor一下提供答案的網友!
Spieler fragt[再噗]有個數學問題,本人將在週一公佈答案於本人部落格,謝謝!有十二枚金幣, 其中一枚是偽幣, 重量與真幣不同, 但不知偽幣比較重或比較輕, 現有天平一座, 可以使用三次找出偽幣是哪一枚? 並比真幣輕或重嗎?
Facebook上解答!
硬幣分成三堆,標明為a, b, c,真的設定為x, 假的設定為y,可解答下列情況。
步 驟1,比較a堆4x與b堆4x,因為同重,表示c堆為
步 驟2,比較a堆2x與c堆2x,因為同重,表示c堆x
步 驟3,比較a堆x與c堆x,因為同重,表示c堆y為假
步 驟2,比較a堆2x與c堆x+y,因為不同重,表示x
步驟3,比較a堆x與c堆y,因為不同重,表示y為假。
這是步驟1同重時的方式,運用到二分法和交換法。但步驟
情況二:步驟1不同重
硬幣分成三堆,標明為a, b, c,硬幣標為1-12,假幣為12。(以下是假幣輕)
步驟1,比較a堆1-4與c堆9-12,若a重,表示一
步驟2,比較1-3+9(+9到+11結果 同)與5-7
步 驟3,比較10與11,若同重,表示12為假,假幣輕
步 驟2,比較1-3+12與5-7+4,前者輕,表示4
步驟3,比較5與4,因為同重,則12為假,假幣輕。
若是假幣重,則方法也如情況二。
我現在只想找出時間好好經營修伯特‧魚看世界啦!
[感謝一中同學s大大提供此免費遊戲的連結]
2010年2月3日 星期三
12枚金幣有一不知或輕或重偽幣之解
Jan 30, 2010 - 02:01PM
Hubert Yu
情況一:步驟1同重假。+y為 假。⋯⋯ 繼續閱讀。+y為 假。1若不同重時,則運用此法至少需4步驟,多出確認假幣的輕重。組為假,b堆(5-8)為真。+4,因為同重,表示10-12為假。。或12 為假。
昨天 9:55
Hubert Yu
有獎賞嗎 XD
昨天 9:57 ·
請複製上方的貼紙語法,貼到您的部落格來串連『我要看電影"Formosa Betrayed"』個活動!
訂閱:
張貼留言 (Atom)
Spieler搜尋
熱門文章
-
[這是網頁http://www.triggertek.com/r/unicode/3400-4DBF 漢字CJK與utf8的對應表,有些罕見字,不會打,就用貼的!] [沒帳號也可匿名推] 「馬牛」=「䭽」,「馬鹿」=「騼」,你會唸?會打字? 這幾天美國牛肉的事,筆者找到兩個馬邊旁...
-
[兩個50元硬幣,一真一偽,你會分辨嗎?圖取自http://www.libertytimes.com.tw/2009/new/oct/19/today-center2.htm] > [沒帳號也可匿名推] 分享 12枚金幣有一不知或輕或重偽幣之解 部落格上政論文寫多了,除了政...
-
[這就是蔣氏政權在台灣所聘請的「明德小組」首任首席顧問德國裝甲兵將軍孟澤爾(Oskar Munzel),圖取於 wiki ,攝影的時間,依孟澤爾所戴的軍帽,以及戰車型號研判,應該是在德國發動戰爭之前,時任官上尉。孟澤爾曾為古德林的計劃參謀,所參與過的幾場會戰,對二戰史稍有涉略的,...
-
[Homo sapiens的遷移圖] 我來自非洲,我不是中國人! 統派人士以及中國憤青常會辱罵主張台灣獨立的人是「數典忘祖」,然而反問其祖先來自何方時?就答曰「 炎黃子孫、龍的傳人 」,有時聽了含真會噴飯。最近一期的八月份台港版的『科學人』 Scientific ...
-
[看到這幾個大學生在反核遊行所舉的標語,什麼「核四是藍綠共業」、「拒成政黨對立籌碼」,真是讓人噴飯,實在很不公道!誰不知道,當年2000年藍軍就是用核四當成政治的籌碼?阿扁為了停建核四,就被國親新立委連署罷免!所謂「政治人物退出」的說法,跟排藍排綠有何差別?這種玩社運的方式,排除...
-
[這是 SimCity早期版本遊戲 畫面的擷圖,上面還真巧顯示1974的字樣。玩過SimCity的都知道,遊戲一開始時,就要先蓋電廠,在科技發展到某一個程度時,就可以蓋以核分裂為技術的核電廠,而這核電廠在遊戲中可是會發生事故的,遊戲發生事故可以重來,然而真實世界那可是浩劫。看到日...
4 則留言:
我提供另一種解法,可能更容易:
一、將硬幣等分二批,拿其中一批再等分上天平,即二側各有三個,如此便可從有無維持水平,得知假幣是在上天平中的那一批,或是沒上天平中那一批。
二、拿三個真幣上天平一側,再將含有假幣的那一組(6個)等分,一批上天平,另一批不上天平;如此便可知二件事:(1)假幣是較真幣輕或重、(2)假幣是在上天平中的那一批,或是沒上天平中的那一批。
三、含有假幣的那一批剩3個,二個各上天平二端,一個不上;若維持水平,即沒上天平者是假的,若沒維持水平,因已知假幣是較重或較輕,也可一眼視破。
繼續於此噗討論!
if step 1 and step 2 result are both equal, but step 3 are unequal, then we cannot concluded since no information to shown the fake coin is heavier or lighter.
I check in details but see each method has bug. The solution needs to know the fake coin is heavier or lighter. But I see all above methods can figure out if it is heavier or lighter for some case.
張貼留言