马场上只有5条跑道,欲从25匹马中选出3匹最快的,求最少比赛次数

每次只能有5匹马参赛,故先将25匹马分成5组(A, B, C, D, E)。

这5组进行组内比赛,此时进行了5场比赛,分别得出5组内的排名,(A1, A2, A3, A4, A5), (B1, B2, B3, B4, B5), (C1, C2, C3, C4, C5), (D1, D2, D3, D4, D5), (E1, E2, E3, E4, E5)。

第6场比赛,(A1, B1, C1, D1, E1),这5匹马组成一组比赛,得到一个排名,为看起来方便,假设排名为(A1, B1, C1, D1, E1),此轮比赛得出最快的一匹马A1。

这里作出分析,因只选取25匹马中的3匹最快的马,所以下一场比赛的名额应该是有可能进入前三的马,而且只剩两个名额,因A1胜出,所以A组中(A2, A3)可能会是前三的马(A2, A3均快于B1),B组中(B1, B2)有可能是(B1, B2均快于A2, C1),C组中只有C1可能是(C1快于A2, B2)。

第7场比赛,(A2, A3, B1, B2, C1),选出最快的两匹马,与A1组合,则为最快的三匹马。

本题答案:7场

你可能感兴趣的:(编程之美)