阿尔伯特和伯纳德刚刚成为谢丽尔的朋友,他们想知道她的生日,谢丽尔给了10个备选日期:5月15日,5月16日,5月19日,6月17日,6月18日,7月14日,7月16日,8月14日,8月15日,8月17日。其中一个是她的正确生日。
谢丽尔然后分别告诉了阿尔伯特正确的月份(没告诉是哪一天),告诉了伯纳德正确的日子(没告诉是哪个月)。
之后是阿尔伯特和伯纳德的对话。阿尔伯特:“我不知道生日是哪天,但我知道伯纳德也不知道。”伯纳德:“我原本不知道,但现在我知道了。”阿尔伯特:“那我现在也知道了。”
问,谢丽尔的生日是哪天?
答案:
首先,在10个日子中,只有18日和19日出现过一次,如果谢丽尔生日是18日或19日,那知道日子的伯纳德就能猜到月份,一定知道谢丽尔生日是几月几日。阿尔伯特肯定伯纳德不知道谢丽尔的生日,因此推断生日不会在18日或19日,继而判断不会在出现18日或19日的5月和6月。所以她的生日一定是7月或8月。
其次,根据伯纳德的表述,在7月和8月剩下的5个日子中,只有14日出现过两次。如果谢丽尔告诉伯纳德她的生日在14日,那伯纳德就没有可能凭阿尔伯特的一句话,猜到她的生日。所以14日被排除。现在的可能性只剩下7月16日、8月15日和8月17日。
最后,在伯纳德说话后,阿尔伯特也知道了谢丽尔的生日,这表明生日的月份不可能在8月。因为8月有两个可能的日子,7月却只有一个可能性。所以答案是7月16日。
注:这道数学题首度出现在2015年4月8日的“新加坡暨亚洲学校数学奥林匹克竞赛”上,新加坡新闻主播4月11日将这道题目放到网上后,难倒全球众多网友,也吸引各方高手尝试破解这道难题。