Re: [問題] 擲骰算分

看板puzzle作者 (史提米)時間3年前 (2020/08/26 20:02), 編輯推噓1(100)
留言1則, 1人參與, 3年前最新討論串2/2 (看更多)
※ 引述《buffalobill (水牛比爾)》之銘言: : 想到就po : PuzzleUp風味題 : 先說這題我寫程式算的 : 紙筆的話我還不知道如何列式子…… : 【擲骰算分】 : 擲一枚公正骰子六次,並計算分數 : 分數的計算規則如下: : 第1次擲骰:擲出的點數即為起始分數 : 第2~6次擲骰:與上一次擲骰作比較 : 若比上次擲骰點數高,則分數+1 : 若比上次擲骰點數低,則分數-1 : 若與上次擲骰點數相同,則分數加倍 (分數可小於0) : 問:若第一次擲骰點數為2,則六次擲完分數的期望值為何? : 以最簡分數作答 : 若只擲兩次,則期望值為 17/6 令 f(s, d, n) = "現在是 s 分,上一次的點數為 d ,還可以骰 n 次" 的期望值 f(s, 1, 1) = (7/6)*s + 5/6 f(s, 2, 1) = (7/6)*s + 3/6 f(s, 3, 1) = (7/6)*s + 1/6 f(s, 4, 1) = (7/6)*s - 1/6 f(s, 5, 1) = (7/6)*s - 3/6 f(s, 6, 1) = (7/6)*s - 5/6 觀察到 s 的係數都是 7/6 ,令常數為 b_{1,1}, b_{2,1}, ..., b_{6,1} 則 b_{1,1} = -b{6,1}, b_{2,1} = -b_{5,1}, b_{3,1} = -b_{4,1} 假設: f(s, d, n-1) = a_{n-1} * s + b_{d,n-1} 且 b_{1,n-1} + b_{6,n-1} = b_{2,n-1} + b_{5,n-1} = b_{3,n-1} + b_{4,n-1} = 0 (在 n-1 = 1 時,假設成立) 則: f(s, 1, n) = (1/6)*( f( 2s, 1, n-1) + f(s+1, 2, n-1) + f(s+1, 3, n-1) + f(s+1, 4, n-1) + f(s+1, 5, n-1) + f(s+1, 6, n-1)) = (1/6)*( a_{n-1}*2*s + b_{1,n-1} + a_{n-1}*(s + 1) + b_{2,n-1} + a_{n-1}*(s + 1) + b_{3,n-1} + a_{n-1}*(s + 1) + b_{4,n-1} + a_{n-1}*(s + 1) + b_{5,n-1} + a_{n-1}*(s + 1) + b_{6,n-1}) = (1/6) * ( 7*a_{n-1}*s + 5*a_{n-1} ) 同理, f(s, 2, n) = (1/6) * (7*a_{n-1}*s + 3*a_{n-1}) f(s, 3, n) = (1/6) * (7*a_{n-1}*s + 1*a_{n-1}) f(s, 4, n) = (1/6) * (7*a_{n-1}*s - 1*a_{n-1}) f(s, 5, n) = (1/6) * (7*a_{n-1}*s - 3*a_{n-1}) f(s, 6, n) = (1/6) * (7*a_{n-1}*s - 5*a_{n-1}) ==> f(s, d, n) = ((7/6) * a_{n-1}) * s + b_{d,n} b_{1,n} = b_{1,1} * a_{n-1} b_{2,n} = b_{2,1} * a_{n-1} b_{3,n} = b_{3,1} * a_{n-1} b_{4,n} = b_{4,1} * a_{n-1} b_{5,n} = b_{5,1} * a_{n-1} b_{6,n} = b_{6,1} * a_{n-1} --> 方程組 (A) 且 b_{1,n} + b_{6,n} = b_{2,n} + b_{5,n} = b_{3,n} + b_{4,n} = 0 成立 由數學歸納法我們可以知道 方程組(A) 對所有 n >= 1 都成立。 且 a_n = (7/6)^n 題目所求 = f(2, 2, 5) = a_5 * 2 + b_{2,5} = (7/6)^5 * 2 + (3/6) * (7/6)^4 後記 (馬後炮解釋為什麼會有漂亮的公式): 如果一開始的分數是 s ,接下來,除了骰到同點數分數加倍之外,所以有情況 都是在影響常數項。而且加倍的機率和現在的點數無關,一定是 1/6 。 如果我們把 +1, -1 改成 +0, -0 的話,g(s, d, n) = (7/6)^n * s (我們用 "g" 來表示這個改過規則的遊戲) 而 +1 -1 的部份,可以想像我們從 +1 分或 -1 分開始玩,再玩 n-1 輪。 這部份的期望值和 s 無關,只和 d (現在的點數), n (還有幾輪) 有關 所以 f(s, d, n) = (7/6)^n * s + b_{d,n} 而 b_{d,n} 的部份,b_{d,n} 和 b_{7-d,n} 是對稱的遊戲。 把"若比上次擲骰點數高,則分數+1"和"若比上次擲骰點數低,則分數-1"交換, 相當於把點數重新指定(把骰子的 X 和 7-X 交換) 所以 b_{d,n} + b_{7-d,n} = 0 其實也不意外。 而且,因為 b_{d,n} + b_{7-d,n} == 0 ,就代表下一輪 (b_{d,n-1}) 的貢獻 會兩兩消掉,所以 b_{d,n} 只和 d 和 a_n 的值有關 (也就是這一輪有多少機率會 +1 或 -1 ,而 +1 和 -1 會如何被未來的遊戲放大) 而且不論這一輪是骰到 +1 或 -1 ,放大的係數都是一樣的,都是 a_{n-1} ==> b_{d,n} = (+1, -1 的期望值) * a_{n-1} b_{d,n} = ((7 - 2 * d) / 6) * a_{n-1} (如果我們硬要寫成公式的話) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 104.132.150.77 (美國) ※ 文章網址: https://www.ptt.cc/bbs/puzzle/M.1598443371.A.6B2.html

08/26 22:23, 3年前 , 1F
推推XD
08/26 22:23, 1F
文章代碼(AID): #1VHazhQo (puzzle)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1VHazhQo (puzzle)