题目:有36匹马和一条6赛道的跑马场,没有计时器,请用最少的比赛轮次挑选出最快的3匹马。
因为没有计时器,所以不同马之间都要比一比。不过,我们的任务是选出最快的3匹而不是排序,所以要尽量减少比赛轮次,那么:1、比过的马不用再比;2、已知跑得慢的马也不用再次参加了。有了上面这两条原则做指导,解决起来不是特别困难。下面我给出我的方案。
1. 36匹马分为6组,比赛6次,取出每次最快的前三名。为什么要取前三名呢,因为最快的3匹马被分在同一组也是有可能的。下面比赛后的结果
第一组 01 > 02 > 03
第二组 04 > 05 > 06
第三组 07 > 08 > 09
第四组 10 > 11 > 12
第五组 13 > 14 > 15
第六组 16 > 17 > 18
2. 让每组的第二名比赛,跑第一的马所在的组得以保留,剩下的组的第二、三名被淘汰。假设第一组的02跑第一:
第一组 01 > 02 > 03
第二组 04
第三组 07
第四组 10
第五组 13
第六组 16
3. 接下来,让03、04、07、10、13、16比赛。如果
03得了第一名,那么跑得最快的三匹是01 02 03
03得了第二名,那么跑得最快的三匹是v1 01 02
03得了第三名及其以后,很么直接让 v1 v2 v3 01 02 再比赛一次,取得最终的前三名。
所以总共需要比赛6 + 1 + 1 + (1) = 8次或9次。