一道月薪3万的Java面试题目
这是一道java面试题,想清楚了,贴出来和大家分享一下:
题目内容:
小明和小强都是张老师的学生,张老师的生日是某月某日,2人都不知道张老师的生日。
生日是下列10组中一天:
3月4日 3月5日 3月8日
6月4日 6月7日
9月1日 9月5日
12月1日 12月2日 12月8日
张老师把月份告诉了小明,把日子告诉了小强,张老师问他们知道他的生日是那一天吗?
小明说:如果我不知道的话,小强肯定也不知道。
小强说:本来我也不知道,但是现在我知道了。
小明说:哦,那我也知道了。
请根据以上对话推断出张老师生日是哪一天?
答案:9月1日
分析过程:
首先是给出了下面的10组,老师的生日就是其中的一天:
3-4 3-5 3-86-4 6-79-1 9-512-1 12-2 12-8
小明是知道月份的,因为张老师告诉了他了生日的月份,而小强知道生日的日子。
也就是说小明知道是哪个月,但不知道哪天,而小强知道是哪天不知道是哪个月。
而知道月份的小明说:如果我不知道的话,小强肯定也不知道。 小明这么肯定的
说,这说明月份不可能是6月或12月,如果是6月或12月的话,如果小强知道的日子
是7号或者2号的话,小强通过老师告诉的日子就能知道生日是具体的哪月的哪天,
所以排除老师的生日是在6月或12月。现在可供选择的是:
3-4 3-5 3-8 9-1 9-5
小明说话之后,小强说:本来我也不知道,但是现在我知道了。说明小强听小明这
么说之后他也就知道了老师生日,这也就是说小强知道的日子在剩下的3月和9月中
是唯一的,不然小强不可能知道是哪天?这也就是说小强知道的日子是1号,这样
小强就知道老师的生日了,是9月1日。
这个时候,小明说:哦,那我也知道了。小明这么说,说明小强已经判断出老师生日
是在9月份,那小强是怎么知道的呢?那只有一种可能,那就是小强知道的日子是1日。
这样小明也知道了老师的生日:9月1日。
- 3楼oqqDuan13天前 14:10
- 我觉得是12月1号也没有错啊,上面的对话也一样成立,lz能解释一下不
- Re: cselmu9前天 18:01
- 回复oqqDuan1n看小明说的第一句话,小明说:”如果我不知道的话,小强肯定也不知道“。小明这么肯定,原因是小明知道的月份不是6月和12月,也说明小强不能通过老师告诉的日子判断出月份是哪个月,如果12月成立的话,这样小明说的话就不一定成立了,原因是老师告诉小强的日子如果是2号的话,小强是可以确定老师生日的,2号对应的只有12月。所以小明的第一句话就排除老师生日在12月份的可能,12月1号自然也就不成立了。
- 2楼YiShenLiao4天前 15:26
- 解析的很清楚,学习了!
- 1楼cselmu94天前 15:24
- 呵呵,欢迎指教!