有三个盒子,一个只装苹果,一个只装橘子,第三个则装有苹果和橘子。盒子被贴上了错误的标签,导致所有标签都没有正确反映盒子里装的是什么。现在只打开一个盒子并且不能向里看,然后用手拿出一个水果。看一眼这个水果,你如何立刻把所有标签对上正确的盒子?
這題屬於邏輯辨思型的題目,是從網路 http://www.cocoachina.com/programmer/20160512/16229.html 節錄下來的,為蘋果公司考驗軟體工程師的智慧。
騎沈四傑2024年度總結
-
騎沈四傑指ichirou、馬拉錘、CEKU、cj6,由於ceku隱退,他的位置由jackchows頂替。 成員介紹
ichirou:facebook倉頡群組管理員,大馬倉友論壇管理員。I.明體作者。性情暴躁,智商偏低,因此常鬧笑話,多次摔跤。現已不敢隨便對倉頡規則發表意見。
馬拉錘:大馬倉友管理員,三代補完計...
2 天前
兩個線索: 1. 所有標籤都是錯的。 2. 拿出來的水果知道是甚麼。
回覆刪除假設 O:橘子,A:蘋果,AO:混裝
真實: O, A, AO
標籤1: A, AO, O
標籤2: AO, O, A
不會有第三種貼錯標籤的狀態
當拿到甚麼水果,再比對那盒標籤, 是標籤1或標籤2, 就可以對照出正確的標籤。
http://i.imgur.com/cKKu3tZ.jpg
有三個盒子,因此共有 3! = 6 種排列可能,扣除全裝對及某一盒水果裝對的情形四種,
刪除剩下就是你所提的兩種可能,(A, AO, O) 及 (AO, O, A),不過個人覺得說明應該修正如下:
外盒標籤: O, A, AO
可能內容物1: A, AO, O
可能內容物2: AO, O, A
從標示混合的那一盒取物,就可以明確判定是哪一種情形。
其實我們兩個的思路是等價的。
刪除例如我的第一個column, 想法是橘子這盒水果,要滿足"標籤貼錯" 這個條件,那麼標籤只有可能是貼蘋果或混裝兩種可能。
你的出發點是從"標籤"出發,我的出發點是從"真實裝的水果"出發。
如果可以完全打開盒子看清內容物時,我倆的方法是等價的,但是只能隨機抽取一顆水果時,那一定要從貼有混合標籤的那一盒來判別,才不會弄錯。
刪除Bridan 的邏輯才是對的。 厲害!
刪除過獎了,常寫程式對於細節判別要求比較敏感,難怪這題主要在測驗軟體工程師。
刪除