一道有趣的面试题【腾讯研发面试题】

题目如下:

有64匹🐎,8个跑道,不能测速,要求选出最快的4匹🐎,最少需要跑多少个回合?

解题思路:

  • 随机分成8组,进行测试,这里是8个回合
  • 取得每组的第一进行比赛,可以得到最快的🐎,这里用了1回合。
  • 然后去掉在冠军组里面5-8名的🐎和它们对应的组,因为组内最强的在冠军组也没进前四,所以弱于他们的也不用再看了,这时只剩下冠军组的前四名的组,共32只🐎。
  • 再去掉每个组内的5-8名的🐎,组内都没进前四,肯定不可能是所有🐎的前四,这时剩下4*4的16只🐎。
  • 最快的🐎的组内前四名,除去最快的🐎有三只,他们可能是前四。
  • 冠军组第二的🐎组内取前三个,因为已知比这组最快的🐎还要快的就有一只了,所以只能取到第三只。
  • 同理冠军组第三的🐎,组内能取到前两名,第四的🐎组内只能取到他自己。
  • 所以现在的🐎总共有(4-1)+ 3 + 2 + 1 = 9,冠军不用再比赛了,9匹马选出三个最强的。
  • 前8匹进行比赛选出前三,最后一匹🐎跟前三比赛,选出最终的三匹马,这里用了2回合。
  • 所以最少总共需要的回合数就是,8 + 1 + 2 = 11回合。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值