1. 程式人生 > >java智力題ms->40萬年薪面試題

java智力題ms->40萬年薪面試題

剛看了一個標題:40萬年薪面試題,思考了一會兒,做出解答,大家看對不對。

題目:
小明和小強都是張老師的學生,張老師的生日是M月N日,2人都不知道張老師的生日是下列10組中的一天,張老師把M值告訴了小明,把N值告訴了小強,張老師問他們知道他的生日是那一天嗎?
3月4日   
3月5日
3月8日
6月4日   
6月7日
9月1日
9月5日
12月1日
12月2日
12月8日
小明說:如果我不知道的話,小強肯定也不知道
小強說:本來我也不知道,但是現在我知道了
小明說:哦,那我也知道了
請根據以上對話推斷出張老師的生日是哪一天?

解答:
1、(老師告訴小明、小強數值之後)如果N值是2或7的話,小強就應該說出來了。
---->不是: 6月7日、12月2日
2、(老師告訴小明、小強數值之後)如果M值是6的話,小明根據小強的反應就能猜出是6月4日
了(六月只有6.4、6.7,據1可知排除6.7,如果再知道M是6的話,傻子也知道該選6.4
了)。
---->不是: 6.4
3、至此,剩下日期排列
3月4日
--------------------------------
一下日期(d6)
3月5日 3月8日
-------------------------------- 3月 5 8
9月1日 9月5日
-------------------------------- 9月 5 1
12月1日 12月8日
-------------------------------- 12月 8 1

4、小明說:如果我不知道的話,小強肯定也不知道
----->本句解釋為:根據邏輯排除1、2步驟中的日期
5、小強說:本來我也不知道,但是現在我知道了
----->小強本就知道一個數N,如果N是1、5、8的話,小強不可能從4這
句話中知道生日,所以小強知道的N=4(只有一個3.4)
6、小明說:哦,那我也知道了
----->根據3中日期組合,小強能根據自己N數值確定日期,只能是3.4


與其類似:
老師的三個學生A、B、C,大家都知道的是老師有2頂白帽子,3頂黑帽子。
老師把他們三個帶到一個漆黑的屋子裡面,給A、B帶上黑帽子,給C帶上白帽子。出來之後讓他們猜戴帽子的顏色,三個人相互看了看,過了一會兒,A說,我猜出來了,我戴的黑帽子A是怎麼猜出來的?

答案:
A想,如果我戴白帽子的話(共2白,C已戴一頂),B就一下猜出來自己戴的黑帽子了,所以我肯定戴的黑帽子。

請大家看分析的對不對,予以評價,3Q