BAT常爱问的面试智力题,你能答对几道?

640?wx_fmt=png

原文地址:app

https://www.nowcoder.com/discuss/150434?type=0&order=4&pos=6&page=1学习

赛马次数

有 25 匹马和 5 条赛道,赛马过程没法进行计时,只能知道相对快慢。问最少须要几场赛马能够知道前 3 名。spa

先把 25 匹马分红 5 组,进行 5 场赛马,获得每组的排名。再将每组的第 1 名选出,进行 1 场赛马,按照这场的排名将 5 组前后标为 A、B、C、D、E。能够知道,A 组的第 1 名就是全部 25 匹马的第 1 名。而第 二、3 名只可能在 A 组的 二、3 名,B 组的第 一、2 名,和 C 组的第 1 名,总共 5 匹马,让这 5 匹马再进行 1 场赛马,前两名就是第 二、3 名。因此总共是 5+1+1=7 场赛马。3d

A 组:1,2,3,4,5code

用绳子计时 15 分钟

给定两条绳子,每条绳子烧完正好一个小时,而且绳子是不均匀的。问要怎么准确测量 15 分钟。get

  • 点燃第一条绳子 R1 两头的同时,点燃第二条绳子 R2 的一头;class

  • 当 R1 烧完,正好过去 30 分钟,而 R2 还能够再烧 30 分钟;遍历

  • 点燃 R2 的另外一头,15 分钟后,R2 将所有烧完。im

九球称重

有 9 个球,其中 8 个球质量相同,有 1 个球比较重。要求用 2 次天平,找出比较重的那个球。d3

将这些球均分红 3 个一组共 3 组,选出 2 组称重,若是 1 组比较重,那么重球在比较重的那 1 组;若是 1 组重量相等,那么重球在另外 1 组。

对比较重的那 1 组的 3 个球再分红 3 组,重复上面的步骤。

药丸称重

有 20 瓶药丸,其中 19 瓶药丸质量相同为 1 克,剩下一瓶药丸质量为 1.1 克。瓶子中有无数个药丸。要求用一次天平找出药丸质量 1.1 克的药瓶。

能够从药丸的数量上来制造差别:从第 i 瓶药丸中取出 i 个药丸,而后一块儿称重。能够知道,若是第 i 瓶药丸重 1.1 克/粒,那么称重结果就会比正常状况下重 0.1 * i 克。

获得 4 升的水

有两个杯子,容量分别为 5 升和 3 升,水的供应不断。问怎么用这两个杯子获得 4 升的水。

能够理解为用若干个 5 和 3 作减法获得 4。

  • 不能从 3 作减法获得 4,那么只能从 5 作减法获得 4,即最后一个运算应该为 5 - 1 = 4,此时问题转换为获得 1 升的水;

  • 1 升的水能够由 3 作减法获得,3 - 2 = 1,此时问题转换为获得 2 升的水;

  • 5 - 3 = 2。

扔鸡蛋

一栋楼有 100 层,在第 N 层或者更高扔鸡蛋会破,而第 N 层往下则不会。给 2 个鸡蛋,求 N,要求最差的状况下扔鸡蛋的次数最少。

能够将楼层划分红多个区间,第一个鸡蛋 E1 用来肯定 N 属于哪一个区间,第二个鸡蛋 E2 按顺序遍历该区间找到 N。那么问题就转换为怎么划分区间知足最坏状况下扔鸡蛋次数最少。

E1 须要从第一个区间开始遍历到最后一个区间。若是按等大小的方式划分区间,即 E2 的遍历次数固定。那么最坏的状况是 N 在最后一个区间,此时 E1 遍历的次数最多。为了使最坏状况下 E1 和 E2 总共遍历的次数比较少,那么后面的区间大小要比前面的区间更小。具体来讲,E1 每多遍历一次,E2 要少遍历一次,才使得 N 不管在哪一个区间,总共遍历的次数同样。设第一个区间大小为 X,那么第二个区间的大小为 X-1,以此类推。那么 X + (X-1) + (X-2) + … + 1 = 100,获得 X (X + 1) / 2 = 100 ,即 X = 14。

640?

推荐阅读

640?wx_fmt=jpeg

640?

今日问题  

640?

你对学历和命运持什么样的观点?

你们过年这几天还有在学习吗?

打卡格式:打卡第n天,答:...

为何打卡?戳下面就知道了!

21/天/养/一/个/好/习/惯

640?wx_fmt=png