微軟的一道經(jīng)典邏輯推理題
字體:
大
中
小 發(fā)表日期:2010-02-15 21:01 評(píng)論:0 點(diǎn)擊:2168
題目是這樣的:
小明和小強(qiáng)都是張老師的學(xué)生,張老師的生日是M月N日,2人都不知道張老師的生日是下列10組中的一天,張老師把M值告訴了小明,把N值告訴了小強(qiáng),張老師問(wèn)他們知道他的生日是那一天嗎?
3月4日 3月5日 3月8日
6月4日 6月7日
9月1日 9月5日
12月1日 12月2日 12月8日
小明說(shuō):如果我不知道的話,小強(qiáng)肯定也不知道
小強(qiáng)說(shuō):本來(lái)我也不知道,但是現(xiàn)在我知道了
小明說(shuō):哦,那我也知道了
請(qǐng)根據(jù)以上對(duì)話推斷出張老師的生日是哪一天?
此題剛開(kāi)始感覺(jué)無(wú)從下手,不知道該如何是好。但是這類(lèi)題目,一般都是看你能不能利用其中的規(guī)律,或者打破常規(guī)的奇思妙想。什么情況下,一個(gè)人能根據(jù)他知道一個(gè)數(shù)字推出別人的生日呢?在這一題中,小明和小強(qiáng)知道的信息只有:生日可能的10個(gè)值,老師告訴他們的一個(gè)數(shù)字(月或者日)還有他們兩個(gè)之間的對(duì)話。
首先是小明先說(shuō)話,他說(shuō)他不知道。他知道的可能性也確實(shí)很小,因?yàn)闊o(wú)論老師高訴他是哪個(gè)月,都有2種或者3種可能性讓他選擇,除非他還知道其他的信息,不然他肯定不知道。不過(guò)他不僅說(shuō)他不知道,而且還說(shuō)“如果他不知道的話,小強(qiáng)肯定也不知道”。那么小強(qiáng)什么情況下肯定不知道呢?那就是和小明一樣,老師告訴他的那個(gè)日對(duì)應(yīng)至少2個(gè)月份,除非他還知道其他信息,那他肯定不能確定最終生日的。但是仔細(xì)觀察后,我們可以發(fā)現(xiàn):如果老師告訴小強(qiáng),是7或者2的話,那么他就可以知道老師的生日了。因?yàn)?和2對(duì)應(yīng)的月是唯一的。所以從第一句話可以知道:N不會(huì)為7和2,M也不會(huì)為6和12(后半句要想清楚了)。
那現(xiàn)在的可能值就是:
3月4日 3月5日 3月8日
9月1日 9月5日
現(xiàn)在小強(qiáng)說(shuō)他知道了。那N就不可能為5了,因?yàn)镸就有3和9兩種可能。
那現(xiàn)在的可能值就是:
3月4日 3月8日
9月1日
現(xiàn)在小明也說(shuō)他也知道了。那M就肯定為9了。因?yàn)镸為3的為話,N就有4和8兩種可能了。
所以老師的生日是:9月1日。
解題總結(jié):根據(jù)當(dāng)前條件找出當(dāng)前最能肯定(一定正確)的結(jié)論,一步一步的推下去,不斷排除,最終確定。
感慨:微軟的面試題果然就是不一樣啊。想通了之后,覺(jué)得此題太妙了。呵呵。
※ ※ ※ 本文純屬【箏語(yǔ)】個(gè)人意見(jiàn),與【鋼之家鋼鐵博客】立場(chǎng)無(wú)關(guān).※ ※ ※
 該日志尚無(wú)評(píng)論! |