題目要求:
有4張紅色的牌和4張藍色的牌,主持人先拿任意兩張,再分別在a、b、c三人額頭上帖任意兩張牌,a、b、c三人都可以看見其餘兩人額頭上的牌,看完後讓他們猜自己額頭上是什麼顏色的牌,a說不知道,b說不知道,c說不知道,然後a說知道了。
請教如何推理,a是怎麼知道的。如果用程式,又怎麼實現呢?
題目分析:
假設紅用x表示,藍用y表示,則可能有三種情況:
1. b c 可能的a ===> b c a
xx yy xx/yy/xy xx yy xy
分析:此種情況的a只能是xy。因為如果a是xx,則c看到ba的頭上都是xx,則肯定會說自己是yy;同理如果a是yy。
2.b c 可能的a ===> b c a
xy xx xx/xy/yy xy xx xy
分析:此種情況的a也只能是xy。首先a不能是xx,因為c也是xx;假設a是yy,則最後應該是b說知道自己是xy(參考第一種情況);
3.b c 可能的a ===> b c a
xy xy xx/xy/yy xy xy xy
分析:此種情況的a也只能是xy。a為xx或yy就是情況2,此時最後說知道了的應該是b或者c,因此此種情況的a也只能是xy。
微軟面試100題
41.求固晶機的晶元查詢程式 晶元盤由數目不詳的大小一樣的晶元組成,晶元並不一定全布滿晶元盤,照相機每次這能匹配乙個晶元,如匹配過,則拾取該晶元,若匹配不過,照相機則按測好的晶元間距移到下乙個位置。求遍歷晶元盤的演算法 求思路。兩個非降序鍊錶的並集,1 2 3 和 2 3 5 並為 1 2 3 5 ...
微軟面試100題 64
64.尋找醜數 運算 題目 我們把只包含因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第1500個醜數。分析 這是一道在網路上廣為流傳的面試題,據說google曾經採用過這道題。package...
微軟面試100題 9
題目 輸入乙個整數陣列,判斷該陣列是不是某二元查詢樹的後序遍歷的結果。如果是返回true,否則返回false。例如輸入5 7 6 9 11 10 8,由於這一整數序列是如下樹的後序遍歷結果 8 6 10 5 7 9 11 因此返回true。如果輸入7 4 6 5,沒有哪棵樹的後序遍歷的結果是這個序列...