→ mzhrqoc01 :o全用是代表1~9名都有吧,大家都第一名是o全不用的 01/05 12:58
※ 編輯: kzvito 來自: 120.126.33.85 (01/05 13:42)
※ 引述《SJOKER (高斯教授)》之銘言:
: ※ 引述《mack (腦海裡依然記得妳)》之銘言:
: : 九個跑者陸續跑到
: : 第一個 第一名
: : 第二個 跟上ㄧ個ㄧ樣快或者上ㄧ個名次加1
: : 同理第三個到第九個 也是跟上ㄧ個ㄧ樣快或者上ㄧ個名次加1
: : 名次的組合總共 = 1*2*2*2*2*2*2*2*2 = 2^8
: : 寫程式基本上8個for迴圈就寫完了
: 只是就數學的部分有一點想法,提出來供參考:
: 剛好很像高二排列組合,所以先考慮九個人的抵達順序 => 9!
: 接著考慮名次 :
: 人○人○人○人○人○人○人○人○人
: 中間八個圓圈用來表示空隙,假如九個人全是第一名,則沒有必要"插空" => C(8,0)
: 倘若有出現第二名,則必須選其中一個圓圈插空 => C(8.1)
: 以下類推,故總共有 9!˙[C(8,0) + C(8,1) + ... + C(8,8)] = 9!˙2^8
: 這個問題可以形成 n!˙2^(n-1) 的通式(假如只改變人數的話)
首先謝謝S大
但是這樣的話,
r=跑者
第一種情況:
r1 o r2 o r3 o r4 o r5 o r6 o r7 o r8 o r9
o全不用=>結果大家都第一名
第二種情況:
r2 o r4 o r6 o r8 o r9 o r7 o r5 o r3 o r1
o全不用=>結果大家都第一名
兩個上述同樣結果的情況被算到多次
從 9!˙[C(8,0) + C(8,1) + ... + C(8,8)]的算式中,
可以發現完全不用 o 的情況( C(8,0) )雖然只有一種大家都是第一名的結果,
但卻仍然被算了9!次
一樣的結果會被算到數次
要怎麼克服呢?
(謝謝推文指正)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.235.196.108