关闭

【从零单排之微软面试100题系列】06之根据上排数写出下排数

标签: 面试题
219人阅读 评论(0) 收藏 举报
分类:
本题目选自July大神博客系列【微软面试100题】:july大神,该系列我主要用来记录我的学习笔记。

题目描述:根据给出的上排的十个数,在其下排填出对应的十个数,要求下排每个数都是先前上排那十个数在下排出现的次数。

例如给出上排【0,1,2,3,4,5,6,7,8,9】

那么对应下排【6,2,1,0,0,0,1,0,0,0】


分析思路:一道无聊的智力题,据说是TX的面试题。

(1)从9开始,如果9出现1次,即下排第10个位置为1,那么剩下9个数字里有1个数字在下排出现了9次,从0到8猜测某个数字出现了9次,均能发现矛盾的地方。

比如是0出现了9次,那么对应下排【9,0,0,0,0,0,0,0,0,1】,发现0其实只出现了8次,并且1在下排出现的次数不是0.

如果9出现了2次以上,同样的分析发现更加不可能,故9出现了0次。

(2)再看上排数字8,如果数字8出现了1次,那么有一个数字出现了8次,如果是0出现了8次,即对应的下排【8,0,0,0,0,0,0,0,1,0】,同样,1在下排出现的次数并不是0.

8只可能出现0次。

(3)同样分析上排数字7,也只会出现0次。因为如果7出现1次,可能出现7次的只会是0,而由于7出现了1次,所以1至少会出现1次。得到对应下排【7,1,0,0,0,0,0,1,0,0】.这时会有一个矛盾,就是1其实是出现了2次。所以7对应的下排数字也是0.

(4)再来看6,如果6出现1次,那么可能出现6次的就是数字0。数字1出现了至少1次,如果数字1出现了1次,会发生跟(3)中一样的矛盾,所以1至少出现了2次。如果1出现了2次,那么2就出现了1次。由于0出现6次,那么3,4,5,7,8,9出现的次数都是0次。对应的下排如下:【6,2,1,0,0,0,1,0,0,0】

(5)假设6出现了0次,再来看5,如果5出现1次,则只有可能是0出现了5次,除了6,7,8,9,出现了0次以外,而1也出现了至少1次,那么只有在数字2,3,4中才可能一个出现剩下的0次.但稍经分析发现都是矛盾的。一般分析到这里基本就不用往下分析了。


总之,这是一道极其无聊的智力题,我给的思路可能也比较混乱。在面试时候估计本题就靠直觉慢慢地试出答案来吧

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:4242次
    • 积分:226
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档
    最新评论