随笔-6  评论-4  文章-0  trackbacks-0
小明和小强都是张老师的学生,张老师的生日是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日
小明说:如果我不知道的话,小强肯定也不知道
小强说:本来我也不知道,但是现在我知道了
小明说:哦,那我也知道了
请根据以上对话推断出张老师的生日是哪一天?

我的解析:
"小明说:如果我不知道的话,小强肯定也不知道" <<-->>
 对于M 所在的月的所有N值, 均不能唯一的确定生日.

根据12月2日如果知道2,可以唯一确定生日->M != 12,
同理6月7日知道7可以唯一确定生日->M != 6; 所以M = 3或 9.


"小强说:本来我也不知道,但是现在我知道了" <<-->>
在M = 3或9的前提下, N可以唯一确定生日.

从而推出:  N =1 或 4 或 8

"小明说:哦,那我也知道了 " <<-->>
在M = 3或9, N=1或4或8的前提下,M 可以唯一确定生日.

从而推出: M = 9,因为如果M=3的话, 小明还是不能确定生日,因为N有可能为4或8.


所以答案是: 9月1日.
posted on 2008-12-30 19:49 vcfly 阅读(304) 评论(0)  编辑 收藏 引用 所属分类: thought

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理