2016年6月1日 星期三

訓練數學感 100 ─ 更正水果盒

http://4rdp.blogspot.com/2016/06/100.html

有三个盒子,一个只装苹果,一个只装橘子,第三个则装有苹果和橘子。盒子被贴上了错误的标签,导致所有标签都没有正确反映盒子里装的是什么。现在只打开一个盒子并且不能向里看,然后用手拿出一个水果。看一眼这个水果,你如何立刻把所有标签对上正确的盒子?


這題屬於邏輯辨思型的題目,是從網路 http://www.cocoachina.com/programmer/20160512/16229.html 節錄下來的,為蘋果公司考驗軟體工程師的智慧。

6 則留言:

  1. 兩個線索: 1. 所有標籤都是錯的。 2. 拿出來的水果知道是甚麼。
    假設 O:橘子,A:蘋果,AO:混裝
    真實: O, A, AO
    標籤1: A, AO, O
    標籤2: AO, O, A
    不會有第三種貼錯標籤的狀態
    當拿到甚麼水果,再比對那盒標籤, 是標籤1或標籤2, 就可以對照出正確的標籤。
    http://i.imgur.com/cKKu3tZ.jpg

    回覆刪除
    回覆
    1. 有三個盒子,因此共有 3! = 6 種排列可能,扣除全裝對及某一盒水果裝對的情形四種,
      剩下就是你所提的兩種可能,(A, AO, O) 及 (AO, O, A),不過個人覺得說明應該修正如下:
      外盒標籤: O, A, AO
      可能內容物1: A, AO, O
      可能內容物2: AO, O, A
      從標示混合的那一盒取物,就可以明確判定是哪一種情形。

      刪除
    2. 其實我們兩個的思路是等價的。
      例如我的第一個column, 想法是橘子這盒水果,要滿足"標籤貼錯" 這個條件,那麼標籤只有可能是貼蘋果或混裝兩種可能。
      你的出發點是從"標籤"出發,我的出發點是從"真實裝的水果"出發。

      刪除
    3. 如果可以完全打開盒子看清內容物時,我倆的方法是等價的,但是只能隨機抽取一顆水果時,那一定要從貼有混合標籤的那一盒來判別,才不會弄錯。

      刪除
    4. Bridan 的邏輯才是對的。 厲害!

      刪除
    5. 過獎了,常寫程式對於細節判別要求比較敏感,難怪這題主要在測驗軟體工程師。

      刪除