※ 引述《ds0319 (撲撲撲)》之銘言:
: 其實是面試的題目
: 只是我好想知道答案...
: 就是說今天有100隻馬,要找出最快的前三隻
: 但是跑道只有三個,也就是說一次最多三隻馬下去跑分出勝負
: 快的馬永遠都會跑的比慢的馬快
: 請問最少要跑幾輪比賽
我的方法同前推文所寫
(33+11+4+1+1) + 2 + 2 = 54次
詳細一點為
(33+11+4+1+1) +(1+1)+(1+1)
使用方法為
1.先選出第一名
2.從輸給第一名中選第二名
3.從輸給第二名中選第三名
使用這個方法必須依序選出一二三名
否則不確定第一名,可能輸給第一名的會非常的多
定義a與b ,a為輸給第1名的,b為輸給第2名的
找出第一名共5個階段
其中第一階段的餘數併入第3階段比
100
33....1 a b
11....0 a b
4.....0 a b
1.....1 a b
1.....0 a
共33+11+4+1+1輪
第5階段操作的正確的話,可省去第4階段的b
可想成45階段選出第一名與第四名,第四名除去、二三名為a