问题:有64匹赛马,有8个跑道可以利用,赛马的速度是恒定的,不计时但记录每次比赛的名词,请问赛几次可以取得速度排名前四的赛马?
解答:10到11次
开始没看懂题目,搞来搞去弄了半天,其实有了想法还是比较简单的。
主要的判断依据其实就是如果这匹马已经没有取得前四的机会了,就是至少有4匹马速度比它快,则它就不用再参加剩下的比赛了。
具体做法:
1.首先把64匹马随机分成8组,分别进行8次比赛,记录成绩。
2.再将每组第一名集合起来进行一次比赛。这是第九次比赛。
3.留下第九次比赛前四名的马所在的组。因为对于后四名的马所在的组来说根据判断原则没有一匹有机会进入前四的。
4.剩下的四组按照每组第一名在第九次比赛的成绩排序,这样按照判断原则,只剩下10匹马(如下)可能进入前4,而第一组的第一名肯定是跑最快的马。
第一组: 1 2 3 4
第二组: 1 2 3
第三组: 1 2
第四组: 1
这样问题就变成9匹马找出前三快的。情况好的话跑一次可以得到,不行的话两次。
所以结果是10或者11