sisterAn / JavaScript-Algorithms

基础理论+JS框架应用+实践,从0到1构建整个前端算法体系
5.45k stars 626 forks source link

腾讯:64匹马,8个赛道,找出跑最快的4匹马 #125

Open sisterAn opened 3 years ago

sisterAn commented 3 years ago

64匹马,每一只马的跑步速度是恒定的,不会因为多跑几轮就会速度下降,没有提供秒表进行记录。问需要比赛多少轮才能得出最快的4匹马?

sisterAn commented 3 years ago

step1

分8组,各跑一轮,依成绩组内编号

step 2

各组1号跑一轮,依成绩编号。此时共跑9轮选出最快马 如图,A1是最快马

step 3

此时,仅仅需要在红线区域内(9匹马)中决出前3匹既可,至少需要跑2次

结果

8+1+2=11

forgetallthing commented 3 years ago

100马的有答案吗

imgss commented 3 years ago

第九轮不但选出最快的马,也淘汰最后四名所在的4组,A>B>C>D>(E>F>G>H)(淘汰),所以才从黄色区域选出剩下的三匹马