[算法]滴滴笔试题——赛马问题
问:
25匹马,5个跑道,每个跑道最多能有1匹马进行比赛,最少比多少次能比出前3名?
答:
求前3名要7次;
将马分成A、B、C、D、E五组。
第1-5次比赛:各组分别进行比赛,决出各组名次,取每组前三名
A1、A2、A3,
B1、B2、B3,
C1、C2、C3,
第1-5次比赛:各组分别进行比赛,决出各组名次,取每组前三名
A1、A2、A3,
B1、B2、B3,
C1、C2、C3,
D1、D2、D3,
E1、E2、E3。
第6次比赛:A1、B1、C1、D1、E1,
第6次比赛:A1、B1、C1、D1、E1,
假设得到的结果是A1、B1、C1、D1、E1,A1是跑的最快的,那么分析A组A2、A3还有希望冲进前3,B组呢?只有B2还有希望冲进前3,C组的C1,C2并没有希望冲进前3了,因为C1是比赛的名次是第3名了,D组E组都没有希望了。现在已经知道A1肯定是第一名,剩下A2、A3、B1、B2、C1是有希望冲进前三的。
第7次比赛:A2、A3、B1、B2、C1比赛求出第2,第3即可。