赛马问题
@Lxp,20200120
问题描述
64匹马,8个跑道,问最少比赛多少场,可以选出跑得最快的4匹马
Assumptions:每场比赛每个跑道只允许一匹马,且不存在并列情形
问题分析
前面的九场省略,最后剩下 10匹马
下一步,我们让A2,A3,A4,B2,B3,C1,C2,D1 跑第十场比赛
1、如果A2,A3,A4都没跑进前三名 ,则 A1 +B1 + 第十场比赛的前两名为全场Top4匹马。
2、如果A2,A3,A4 中至少有一个跑进了前三名,那么把第十场的最后一名淘汰,剩下的7匹马和B1再比一场,此时前三名+A1 即为全场Top4匹马。
所以最少比10场,最多比11场。