月薪5万,微软中国研究院最新面试题.
---------------------------------------------------------------------------------------
小明和小强都是张老师的学生,张老师的生日是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日
小明说:如果我不知道的话,小强肯定也不知道
小强说:本来我也不知道,但是现在我知道了
小明说:哦,那我也知道了
请根据以上对话推断出张老师的生日是哪一天
-----------------------------------------------------------------------------
这道题我用了25分钟才答出来,看上去非常简单,但是一上来就答错了,可谓是挖了一个大陷阱.
我是这么做的,首先将数组构造出来
3,3,3,6,6,9,9,12,12,12月
4,5,8,4,7,1,5, 1, 2, 8日
1,1,2,4,4,5,5,7,8,8 日
对应好月A知道日B知道,
如果A不知道,B也不知道.
那么就是说日期不可能是2,7
也就是说月份不可能是12,6
接下来
本来B也不知道,但现在B知道了
也就说说如果B拿的是5,那么B仍然不知道是3月5日还是9月5日.
如果B拿的是4他就知道是3月4日,
如果B拿的是8就知道是是3月8日,
如果B拿的是1就知道是9月1日.
综上所述:
如果B拿到的4或者8,那么A仍然不可能知道是3月4还是3月8.
所以只有B拿的是1的时候才知道是9月1日.
本题得解.
---------------------------------------------------------------------------------------
小明和小强都是张老师的学生,张老师的生日是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日
小明说:如果我不知道的话,小强肯定也不知道
小强说:本来我也不知道,但是现在我知道了
小明说:哦,那我也知道了
请根据以上对话推断出张老师的生日是哪一天
-----------------------------------------------------------------------------
这道题我用了25分钟才答出来,看上去非常简单,但是一上来就答错了,可谓是挖了一个大陷阱.
我是这么做的,首先将数组构造出来
3,3,3,6,6,9,9,12,12,12月
4,5,8,4,7,1,5, 1, 2, 8日
1,1,2,4,4,5,5,7,8,8 日
对应好月A知道日B知道,
如果A不知道,B也不知道.
那么就是说日期不可能是2,7
也就是说月份不可能是12,6
接下来
本来B也不知道,但现在B知道了
也就说说如果B拿的是5,那么B仍然不知道是3月5日还是9月5日.
如果B拿的是4他就知道是3月4日,
如果B拿的是8就知道是是3月8日,
如果B拿的是1就知道是9月1日.
综上所述:
如果B拿到的4或者8,那么A仍然不可能知道是3月4还是3月8.
所以只有B拿的是1的时候才知道是9月1日.
本题得解.