首页 > 面试真题:经典智力题最详汇总(中)
头像
码农鬼仔
编辑于 2022-06-20 11:28
+ 关注

面试真题:经典智力题最详汇总(中)

前言

大家好,我是鬼仔,目前是腾讯微信的一名算法工程师。前几天鬼仔整理了一些面试中常见的经典智力题面试真题:经典智力题最详汇总(上) ,没想到获得了300多个牛友的收藏。这也从侧面反映出,智力题在实际面试中的高频性和普适性,无论你是技术岗,还是非技术岗,在面试中都很有可能会遇到。

最近校招提前批都陆陆续续开始了,鬼仔精心整理了几十道面试中比较典型的智力题,分了上中下三部分,大家可以点赞收藏。

温馨提示:面试中同学们如果遇到熟悉的题,不建议一上来就说出正确答案,这会让面试官觉得你曾做过这题。同学们可以循序渐进地回答,逐步地给出最优解。

1. 拿硬币问题

  • 问题:16个硬币,A和B轮流拿走一些,每次拿走的个数只能是1,2,4中的一个数。谁最后拿硬币谁输。请问:A或B有无策略保证自己赢?
  • 解答:B可以保证自己赢。
    • 如果A拿1个,则B拿2个;
    • 如果A拿2个,则B拿1个;
    • 如果A拿4个,则B拿2个。
      这样每次AB加起来都是3或者6,所以最后会剩下1个或4个。
    • 如果是1个则A直接输了;
    • 如果剩下4个,A全拿则输了,如果不全拿,B继续采取上面的策略,最后还是剩下1个,还是A输。

2. 辩论赛问题

  • 问题:1000个人参加辩论赛,1对1进行辩论,淘汰输掉的一方,问需要安排多少场比赛才能角出冠军?
  • 解答:每场辩论赛只能淘汰一个人,要淘汰999个人则需要安排999场比赛。

3. 火车运煤问题

  • 问题:你是山西的一个煤老板,你在矿区开采了有 3000 吨煤需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列烧煤的火车,这个火车最多只能装1000吨煤,且其能耗比较大,每一公里需要耗一吨煤。请问,怎么运送才能运最多的煤到集市?
  • 解答:
    1. 装 1000 吨煤,走 250 公里,扔下 500 吨煤,回矿山;
    2. 装 1000 吨煤,走到 250 公里处,拿起 250 吨煤继续向前到 500 公里处,扔下 500 吨煤,回矿山。此时火车上还有 250 吨,再加上在 250 公里处还有 250 吨煤,所以,火车是可以回矿山的;
    3. 装上最后 1000 吨煤,走到 500 公里处,装上那里的 500 吨煤,然后一直走到目的;
    4. 由此,最多可以运送 500 吨煤到市场(当然,火车也回不去了,因为那矿山没有煤了)。

4. 旅馆的1元钱问题

  • 问题:有三个人去住旅馆,住三间房,每一间房10元,于是他们一共付给老板30,第二天,老板觉得三间房只需要25元就够了,于是叫小弟退回5元给三位客人,谁知小弟贪心,只退回每人1元,自己偷偷拿了2元,这样以来便等于那三位客人每人各花了9元,于是三个人一共花了27元,再加上小弟独吞了2元,总共是29元.可是当初他们三个人一共付出30元,那么还有1元呢?
  • 解答:这道题其实偷换了概念,他们所消费的27元里已经包括小弟贪污的2元了,再加退还的3元=30元。这30元的分布是:老板拿了25元,小弟拿了2元,三人各拿了1元。

5. 老虎吃羊问题

  • 问题:在岛上有100只老虎和1只羊,老虎可以吃草,但他们更愿意吃羊。如果每次只有一只老虎可以吃羊,而且一旦他吃了羊,他自己就变成羊;而且所有的老虎都是聪明而且完全理性的,他们的第一要务是生存。请问最后这只羊会不会被吃?如果是n只老虎和一只羊呢?
  • 解答:
    • 1只老虎,肯定吃;
    • 2只老虎肯定不吃,否则就被另一只吃了;
    • 3只老虎,如果一只老虎吃掉了羊,这样问题就转换为2只老虎和1只羊的情况,显然另外两种老虎不敢轻举妄动,所以羊会被吃;
    • 4只老虎,如果某一只老虎吃了羊,问题转化为3只老虎和1只羊的问题,它肯定会被接下来的某一只吃掉,然后其他两只只能等着,所以4只老虎,大家都不敢吃羊;
    • 归纳:我们就可以发现如果老虎数目是奇数,那么羊肯定被吃,如果是偶数,那么羊肯定不会被吃。

6. 假钱亏损问题

  • 问题:王小姐是卖鞋的,一双鞋进货价45元,甩卖30元。顾客来买两双鞋给了一张100元,王小姐没有零钱,于是找了邻铺兑换了100元零钱,找给顾客40元。事后邻铺发现钱是假的,王小姐无奈又赔了邻铺100元。请问,王小姐一共亏了多少元?
  • 解答:亏130 元

解法一:

  • 假定王小姐一开始有 200 元,进了 2 双鞋,45 * 2 = 90 此时她还剩 200 - 90 = 110;
  • 现在王小姐把鞋以 30 元一双的价格甩卖,2 双卖出后进账 30 * 2 = 60;
  • 王小姐没有零钱,用 100 换了邻居 100,钱数没有变化,此时王小姐手中有 110 + 60 = 170;
  • 这时邻居发现钱是假的,王小姐赔给邻居 100 元,此时王小姐手中钱数为 170 - 100 = 70;
  • 王小姐手中一开始有 200,最后剩 70,赔了 200 - 70 = 130;
  • 所以得出,王小姐亏了 130 元 。

解法二:

  • 王小姐收到一张 100 元假钞 (没得没失,所以是 0 );
  • 王小姐把 100 元假钞给邻居,换回 100 元真钞 (假钞换真钞,得到了 100 );
  • 王小姐把 2 双 90 元成本的鞋还有 40 元找零给了顾客 (失去了 90 + 40 = 130 元);
  • 王小姐被邻居发现那张一百是假的,于是只得赔给邻居 100 元 (失去了 100 元,先前用假钞换来的);
  • 所以王小姐最终亏了 130 元。

解法三:

  • 换钱的邻铺并没有赚钱,也没赔钱;
  • 使假币的顾客相当于没花钱得到 2 双鞋(45 * 2 = 90)加上 40 元真币,所以相当于赚了 130 元;
  • 所以最终是王小姐亏了 130 元。

7. 赛马问题

  • 问题:25 匹马,每匹马的速度都不一样。因为只有 5 条跑道,所以一次竞赛只能跑 5 匹马,问最少需要多少次竞赛才能找到最快的 3 匹马?
  • 分析:
    • 25 = 5 * 5,首先将所有的马分为5组,每组5匹进行比赛;
    • 假设5次竞赛后的结果是:
      假设比赛结果 比赛次数
      1>2>3>4>5 第1次
      6>7>8>9>10 第2次
      11>12>13>14>15 第3次
      16>17>18>19>20 第4次
      21>22>23>24>25 第5次
    • 将 1、6、11、16、21 再比一次,假设结果是:
      假设比赛结果 比赛次数
      1>6>11>16>21 第6次
    • 那么接下来最快的三匹马只可能在以下马中产生:
      1 > 2 > 3;
      6 > 7;
      11;
    • 1是最快的马,接下来只需再比一次 2、3、6、7、11,即可知道另外两匹最快的马了;
      假设比赛结果 比赛次数
      11>7>6>2>3 第7次
    • 由此可得最快的三匹马是 1、11、7。
  • 解答:至少需要7次。

8. 九点连十线问题

  • 问题:在9个点上画10条直线,要求每条直线上至少有三个点?
  • 解答:

    解法一:三横一竖 + 六斜 (如下图)
    图片说明
    解法二:三竖一横 + 六斜(与解法一类似,如下图)
    图片说明

9. 移动竹签问题

  • 问题:如下图,只能移动两根竹签,而且形状不能改变,把围住的鸡蛋给移出来。(来自《少年包青天第一部》,第13集2分40秒 包拯到杂货店里买米,店老板出的题。)
    图片说明
  • 解答:

    第一步:
    图片说明
    第二步:
    图片说明

总结

鬼仔再次强调,智力题最重要的不是背答案,而是背思路。智力题虽然变化多端,但是面试中遇到的高频智力题类型有限,往往是原题换了马甲,只要我们掌握了思路,以后同类型的智力题都能迎刃而解!

看到这里,希望大家能够给鬼仔点个收藏+关注,鬼仔专注分享面试经验&算法专业知识,感谢大家的支持~

全部评论

(18) 回帖
加载中...
话题 回帖