就可以解出來了:
這個是愛因斯坦出的測試題
這道題目5種要素,25個要點都已經列出但是幹擾條件很多,並且各幹擾條件互相作用,大家可以列出五五表格進行計算,可以暫時確定3個要素的位置,即挪威、藍房子、和中間房子主人的牛奶!
因為各個要素的位置各不相同.所以大家先想壹下:愛因斯坦出的題目是否會出現兩種答案,因為挪威人在第壹間房子:可能是左邊數第壹也可能是右邊數第壹,再去思考子要素的條件,5個房子,四個空間,出現兩種甚至以上的情況的幾率會有多大?大家看1、4、5、7、8、9、14都隱含告訴妳房子的位置條件,房子條件告訴的最明確,所以先假設出房子的具體位置,然後是顏色的確定,中間的人喝的飲料已經確定.國籍和房子假設出來,基本上就剩三個要點的排列,根據香煙牌子的情況試座,大部分已經確定了,大家會發現為什麽只有壹項不合條件,其它的都已經OK了,這個時候試錯千萬不要著急,從整體看,顏色最多有兩組的差異,對比飲料、寵物條件看怎麽插入,只要妳稍加分析,換壹下房子的位置,國籍順應跟著換下,多讀幾遍飲料、寵物、香煙的順序,腦子裏有了它們的大體位置!運氣好的話,兩遍就成功啦~~!舍大取小,敢舍敢分,內外兼得!
編程方法~~
利用數組和循環:
用5個數組(數組名)表示5種屬性,用1、2、3、4、5分別代替各種屬性的具體取值
數組的下標表示房間號,數組元素的取值表示某房間某屬性的具體取值的代號
房間號(即數組下標)也表示方位,房間號小的為左,大的為右,下標相鄰即房間相鄰
房間 0 1 2 3 4
國家 挪 德 瑞 英 丹 ---> a[5]
顏色 綠 藍 黃 紅 白 ---> b[5]
飲品 咖 水 奶 酒 茶 ---> c[5]
香煙 blends prince dunhill blue pall ---> d[5]
寵物 魚 貓 狗 馬 鳥 ---> e[5]
取值 1 2 3 4 5 ---> 數組元素的取值
條件化簡:
1 英---紅 若a[i]=4,則b[i]=4
2 瑞---狗 若a[i]=3,則e[i]=3
3 丹---茶 若a[i]=5,則c[i]=5
4 綠---在白左面 若b[i]=1,b[j]=5,則i<j
5 綠---咖 若b[i]=1,則c[i]=1
6 鳥---pall 若e[i]=5,則d[i]=5
7 黃---dunhill 若b[i]=3,則d[i]=3
8 中間房子---奶 c[2]=3
9 挪---第1間房 a[0]=1
10 貓---有blends鄰居 若e[i]=2,則d[i-1]=1 || d[i+1]=1
11 馬---有dunhill鄰居 若e[i]=4,則d[i-1]=3 || d[i+1]=3
12 酒---blue 若c[i]=4,則d[i]=4
13 德---prince 若a[i]=2,則d[i]=2
14 挪---有藍鄰居 ==〉b[1]=2
15 水---有blends鄰居 若c[i]=2,則d[i-1]=1 || d[i+1]=1
C++源代碼:
答案
綠房子 藍房子 紅房子 黃房子 白房子
挪威人 德國人 英國人 丹麥人 瑞典人
咖啡 礦泉水 牛奶 茶 啤酒
PALL MALL PRINCE 混合煙 DUNHILL BLUE MASTER
鳥 貓 馬 魚 狗
丹麥人養魚