圖解25匹馬的選馬問題


題目一:對於25匹馬,有一個賽場,賽場有5個跑道,不使用計時器(也就是每次比賽僅僅得到本次的比賽的順序)。試問最少比多少場才干選出最快的三匹馬

 

思路:

 

0)5場:這個題相對照較簡單,25匹馬至少要所有參加比賽,所以把25匹馬分成5組進行比賽。這樣我們就能夠得到比賽結果例如以下:

1)選總體第1名:如今我們要選總體第一名,可能成為總體第1名的馬匹為:{A1、B2、B3、B4、B5},那么第6場比賽為[A1。B1。C1,D1。E1

 

比賽結果:第6場得到總體第1

 


2)選總體第23名:依據矩陣關系。可知可能成為總體第2名的馬匹為:{A2、B1},可能成為總體第3名的馬匹為{A2、A3、B1、B2、C1,所以第7場比賽為[A2,B1,A3。B2、C1

 

比賽結果:第7場得到總體第23

 

 

可能你對上面紅色字體不是特別理解,換種思路來說:

 

總體前1名可能出現范圍:A1

總體前2名可能出現范圍:A2、B1

總體前4名可能出現范圍:A1、A2、B1

總體前7名可能出現范圍:A1、A2、A3、B1、B2、C1

... ...

 

自己畫一下就能夠知道里面的規律




題目二:對於25匹馬,有一個賽場,賽場有5個跑道。不使用計時器(也就是每次比賽僅僅得到本次的比賽的順序),試問最少比多少場才干選出最快的五匹馬?(第一題是選前三名)

 

 

思路一:(簡單的,競標賽排序)

 

所謂簡單。一般都有些蠻力的味道。全部優化,一般都會借助上一次的結果優化下一次的操作。

 

簡單的思路關鍵詞是:替換思想(用已選出的賽馬替換掉選出的馬)

 

0)和題目一思路一樣,我們須要5場比賽來得到25匹馬的基本順序。

 


1)開始選馬

 

6場:選總體第1-->參賽馬為[A1,B1,C1,D1,E1-->如果選出的總體第1名為A1

7場:第選總體第2-->參加在為[A2B1,C1。D1。E1-->如果選出的總體第1名為B1

8場:選總體第3-->參加在為[A2。B2,C1,D1。E1-->如果選出的總體第1名為A2

9場:選總體第4-->參加在為[A3,B2C1。D1,E1-->如果選出的總體第1名為C1

10場:選總體第5-->參加在為[A3。B2C2,D1,E1-->如果選出的總體第1名為C2

.....

25場:選總體第202122232425

 

所以使用競標賽排序思想(替換策略)。選出前5名須要10場比賽

 

 

思路二:

 

再反復一句:所謂簡單,一般都有些蠻力的味道。

全部優化,一般都會借助上一次的結果優化下一次的操作。

 

那么優化后的選馬方案為:

 

0)5場仍然是比賽得到5組馬匹的基本序列

 


1)6場:參賽馬為[A1。B1,C1,D1,E1](比賽后如果A1>B1>C1>D1>E1

 

比賽結果:第6場得到總體第1名A1

 


 

2)7場:我們繼續分析可能為總體第2名的馬為{A2B1}。可能為總體第3名的馬為{A2、A3、B1、B2、C1}

此時我們能夠知道事實上僅僅須要比較[A2。A3,B1,B2,C1]就能夠得到第23名了(回憶一下剛才使用簡單替換思想,第6場比賽[A2,B1。C1,D1,E1]。當中D1、E1根本不可能是總體第2名的)

 

比賽結果:第7場得到總體第23

 


 

3)問題來了。第7場得到23名。可是不能確定是哪兩匹馬。

所以我門要列舉一下第23名可能的情況(一共5種):

A2,A3

A2。B1

B1。A2

B1,B2

B1,B3

 

3.1) 對於第一種情況:A2,A3

那么總體第4名可能為:{A4B1

假設第4名為A4,總體第5名可能為{A5、B1

假設第4名為B1。總體第5名可能為{B2、C1

 

非常明顯,我們僅僅須要一場比賽(第8場)就能夠確定總體第34名,參賽馬為:[A4,B1,A5,B2,C1


 

 

3.2)對於另外一種情況:A2、B1

那么總體第4名可能為A3、B2、C1

假設總體第4名為A3。總體第5名可能為{A4、B2、C1

假設總體第4名為B2。總體第5名可能為{A3、B3、C1

假設總體第4名為C1,總體第5名可能為{A3、B2、C2、D1

 

那么我們要向得到總體第45名的馬匹,就須要比較[A3。A4,B2,B3,C1。C2。D1],非常明顯須要2場比賽(第89場)才干分出勝負

 


剩下的3種情況類似,選出前5匹馬,至少8場,最多9


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM