- 面试中的智力题
- 1. 只有两个无刻度的水桶,一个可以装6L水,一个可以装5L水,如何在桶里装入3L的水
- 2. 25匹马,5个赛道,每次只能同时有5匹马跑,最少比赛几次选出最快的马?
- 3.1000瓶药水里面只有1瓶是有毒的,毒发时间为24个小时,问需要多少只老鼠才能在24小时后试出那瓶有毒
- 4.家里有两个孩子,一个是女孩,另一个也是女孩的概率是多少?
- 5.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?
- 6.一共12个一样的小球, 其中只有一个重量与其它不一样(未知轻重),给你一个天平,找出那个不同重量的球?
- 7.有10瓶药,每瓶有10粒药,其中有一瓶是变质的。好药每颗重1克,变质的药每颗比好药重0.1克。问怎样用天平称一次找出变质的那瓶药?
- 8.你有两个罐子,50个红色弹球,50个蓝色弹球,如何将这100个球放入到两个罐子,随机选出一个罐子取出的球为红球的概率最大?
- 9.你现在有一根金条,有一个工人为你工作了七天,他们的工资是金条的七分之一,并且需要当天结清,你只能对金条切割两次,请问需要怎么做
- 10.有三个酒杯,其中两个大酒杯每个可以装8两酒,一个可以装3两酒。现在两个大酒杯都装满了酒,只用这三个杯子怎么把酒平均的分给4个人喝?
- 11.在地球什么地方能够,往南走1公里,然后往东走1公里,再往北走1公里能回到原点?
- 12.50名运动员按顺序排成一排,教练下令:“单数运动员出列!”剩下的运动 员重新排列编号,教练又下令:“单数运动员出列!”如此下去,最后只剩下一个人,他是最开始的几号运动员?
- 13.连续正整数之和为1000 的共有几组?
- 14.49个人中至少几个人生日是同一月?
- 15.一枚正反概率不一样的硬币,如何当一枚正常的硬币来用(正反概率相同)?
- 16.1楼到n楼的每层电梯门口都放着一颗钻石,钻石大小不一。你乘坐电梯从1楼到n楼,每层楼电梯门都会打开一次,只能拿一次钻石,问怎样才能拿到「最大」的一颗?
- 17.一副牌除去大小王还有52张,其中10张牌是正面朝上的,要求一个盲人将牌分成两堆,并且每堆牌正面朝上的数量相同,可以任意翻动每张牌,应该怎么分
- 18.两人玩游戏,在脑门上贴数字(正整数>=1),只看见对方的,看不见自己的,而且两人的数字相差1,以下是两人的对话:A:我不知道,B:我也不知道,A:我知道了,B:我也知道了,问A头上的字是多少,B头上的字是多少?
- 19.在一个飞机场有N架飞机,每架飞机只有一个油箱,每箱油可以使飞机绕地球飞半圈。如果使一架飞机绕地球一圈,至少需要出动多少飞机?(要求所有飞机均能安全返回到机场,只能通过飞机给飞机这样加油方式,不能降落到机场加油)
- 20.晚上有四个人需要过桥,但是只有一个手电筒,并且桥一次最多两个人,每个人通过桥所需的时间也不同,A、B、C、D过桥所需的时间分别为1、2、5、10分钟。请问如何过桥所需时间最短?
- 21.一个人8块钱买了一只鸡,9块钱卖了,10块钱又买回来了,11块钱又卖了,请问他挣了多少钱?
- 22.一共有N颗石子,每次最多取M颗最少取1颗,A,B轮流取(A先),谁最后拿完石子谁就获胜,请问最后谁会获胜?
- 23.海盗分金币问题:5个海盗抢到了100枚金币,他们的分配方案,先抽签决定自己的发言顺序。1号提出的方案,由5个人进行投票表决,如果半数人以上同意(不包括半数),就按他的方案分配,否则扔进海里喂鱼。如果1号被喂鱼,由2号发言,提出的方案由4个人进行投票表决,规则同上。如果2号被喂鱼,以此类推。1号海盗提出什么样的方法才能使得自己分到最多的金币
- 24.高层扔鸡蛋问题:有一个100层的高楼,给你两个鸡蛋,需要测试出在哪层楼扔鸡蛋,鸡蛋不会碎。鸡蛋如果没有碎可以扔无数次。最少需要扔多少次?
当前位置:
场景题 > 面试中的智力题 > 24.高层扔鸡蛋问题:有一个100层的高楼,给你两个鸡蛋,需要测试出在哪层楼扔鸡蛋,鸡蛋不会碎。鸡蛋如果没有碎可以扔无数次。最少需要扔多少次?
本文链接:https://www.mianshi.online/1167.html
24.高层扔鸡蛋问题:有一个100层的高楼,给你两个鸡蛋,需要测试出在哪层楼扔鸡蛋,鸡蛋不会碎。鸡蛋如果没有碎可以扔无数次。最少需要扔多少次?
这是一个非常经典的动态规划问题,手撕代码时也很常见
如果是只有1个鸡蛋,这个问题就很简单了,为保证一定找到这个楼层,只能从第一层开始试。
题目中是两个鸡蛋,正常就是会想到二分法之类,先在50层扔一个,没碎,捡回来在75层扔,碎了,第二个鸡蛋只能从第1层开始试了。第一个鸡蛋用来缩短范围,第二个鸡蛋用来遍历范围。
假设需要x次才能找到临界的楼层,也就是说第一个鸡蛋从第x层扔出(因为需要考虑最差情况,万一第一个鸡蛋碎了,为保证x次能找到,第一个鸡蛋需要从x层扔出。因为如果鸡蛋恰好在第x层碎了,在第x-1层没碎,第一个鸡蛋在x层以上的楼层扔的话,第二个鸡蛋需要遍历x次,一共需要x+1次)
如果第一个鸡蛋碎了,第二个鸡蛋遍历1至x-1层,则需要x次找到。
如果第一个鸡蛋没碎,则第一个鸡蛋的任务是需要继续缩小范围,还是为了保持这个x次能找到临界楼层的条件,现在只剩x-1次了,下一次只能在x+x-1层扔第一个鸡蛋,以此类推,x+(x-1)+(x-2)+……+1>=100,x=14
也就是说最少需要扔14次。
这个问题还有一些变种问题,比如2个鸡蛋,n层楼;k个鸡蛋,n层楼(力扣887题,大家感兴趣可以看看)
本站链接:https://www.mianshi.online,如需勘误,请联系微信:lurenzhang888
点击面试手册,获取本站面试手册PDF完整版