此問題分兩類,一種是選出最快的5匹;一種是選出最快的3匹。
注意,這裡只要求列出最快的5匹馬,不需要給出它們五個的排序(冠亞季殿x)。
所需要比賽的場次根據分組的「均勻程度」而不同;最少需要比賽7場,最多需要8場。
網上有人說的要賽9場,他們預設是要給出5匹的排名(冠亞季殿x)。
方法如下:
得到下面的編號:
a1a2
a3a4
a5b1
b2b3
b4b5
c1c2
c3c4
c5d1
d2d3
d4d5
e1e2
e3e4e5
可能會得到以下幾種結果:
則前5名為a1 b1 c1 d1 e1 (7場)
假設序列為α e1 ... ,則前5名為 a1 b1 c1 d1 α 順序不一定準確。 (7場)
假設序列為α β e1 ...,則一定有:前6名為 a1 (b1 c1 d1 α β)
可能需要加賽一場,如 α = a2 β = b2 時,前6名為a1 b1 (a2 b2 c1 d1) ,加賽一場可得出前5名。 (8場)
也可能不需要加賽,如 α = a2 β = d2時,前5名為a1 (a2 b1 c1 d1) 。 (7場)
假設序列為α β γ e1 ... 則一定有:前7名為 a1 (b1 c1 d1 α β γ )
由於 α β γ ∈ 且互不相等,而b2 c2 d2 都依賴於b1,所以它們三項中至少有兩項依賴於b1,加之c1 d1也依賴於b1,也就是說如果b1不在前5名中,則前7名中至少有五個不在前5名中,這是不可能的。所以b1一定在前5名中!同理α β γ 中至少有一項依賴於c1,加之d1也依賴於c1,如果c1不在前5名中,則前7名裡至少有三項不在前5名中,也是不可能的。故c1也一定在前5名中!序列改為:前6名 a1 b1 c1 ( d1 α β γ ) ,這裡不代表b1一定是亞軍,c1一定是季軍。
至多括號裡面加賽一場,四選二。 (至多8場)
假設序列為α β γ δ e1 則一定有:前8名為 a1 (b1 c1 d1 α β γ δ)
同理,b1 c1必定在前5名中!序列改為:前8名 a1 b1 c1 ( d1 α β γ δ ) ,這裡不代表b1一定是亞軍,c1一定是季軍。
至多括號裡面加賽一場,五選二。 (至多8場)
綜上,給定5條賽道在25匹馬裡面選最快的5匹,需要賽7場或8場。
這個需要賽7場。先構造過程,證明7次一定可以給出前三名(易);再證明6次無法給出前三名(難)。後者我不會嚴謹的數學證明,故此問題待續……
25匹馬,5條賽道,找出最快的5匹馬
前段時間面試的時候來了兩道邏輯題,一道粗細不均勻的繩子燒出15分鐘,比較簡單,思考了下就過了。但是這道關於馬的,想了很久感覺都沒有乙個好的解法。回來之後看了下,這道題據說是google的題,原題是選出最快的三匹馬。看了一下,大受啟發。三匹馬需要七次。我先貼一下我的結論,我這邊算出來的結果五匹馬應該是...
從25匹馬中選出最快的三 五匹馬
前些天看別人的面試題,看到這個題目。一開始沒仔細想,後來看了一篇部落格,發現之前的想法太簡單,並不是最少的 問 25匹馬,5個賽道,沒有表和計數器之類的東西,至少跑幾次可以找出最快的三匹馬?25匹馬分五組,每組按成績排序,如下 q,w,e,r,t y,u,i,o,p a,s,d,f,g h,j,k,...
N N匹馬,N個賽道,求出最快N匹馬的解法
入門級 81匹馬,9個賽道,不計時,最少要賽幾場可以求出最快四匹馬?首先 分為9組分別進行比賽後得到每一組的比賽名次,比賽場次 9 然後 將9組的每組第一名比賽,得到第一名,肯定是所有馬的第一名 比賽場次 1。在這9匹馬中,除了第一名是所有馬的第一名,第2 4名有資格角逐所有馬中的前4名,9個第一名...