• 同事又传过来一道所谓微软面试题



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


    答案是9月1日

    解题思路:
    从第一句话可以得知,小强不能一个人知道是哪一个日期,而日期里没有重复的日的是12月2日和6月7号,所以这两个日期可以排除,同时,可以也就可以排除掉12月和6月(因为小明能确定小强不能马上得出日期,就是因为他得到的日期不是12和6)。
    第二句话,小强告诉我们,他知道了,从上一步剩下的日期中,5号有重复的日期,所以两个5号的日期可以排除,剩下三个日期4号、8号、1号,而这三个日期中,有两个是属于3月的,而最后一句话,小明也知道了,就是说小明能在不知道几号的情况下决定日期,很明显,在剩下的三个日期中,9月只有一个,那老师的生日日期就是9月1日。

    (好像写得不是很清楚的说。)

    所谓这些微软面试题做出不少了,可微软还是没发薪水给我啊!什么世道啊!

  • 相关阅读:
    mock.js
    v-bind和v-model的区别
    if语句中的return
    js中全局变量和局部变量以及变量声明提升
    js中全局和局部变量的区别
    相对路径、绝对路径
    commonJs
    B/S与C/S
    background-origin
    DOM
  • 原文地址:https://www.cnblogs.com/think/p/216126.html
Copyright © 2020-2023  润新知