Re: [心得] 獎勵遊戲機率一覽

看板Unlight (Unlight卡片對戰)作者 (Range)時間12年前 (2012/03/10 21:25), 編輯推噓14(14014)
留言28則, 10人參與, 最新討論串4/4 (看更多)
我用程式跑出期望值啦 以25關為例 如果有無限花1的話 平均玩一次獎勵遊戲要用掉0.68個花1 但是失敗機率是0.96 所以平均成功一次需要21.67個花1... 如果有無限花1也有無限花3的話 平均玩一次獎勵遊戲要用1.67個花1 1.86個花3 平均成功一次需要2.9個花1 3.25個花3 約莫是2538Gem 程式碼在這 http://ppt.cc/bDh8 用C++寫的 要玩的可以試試看 順便看看有沒有bug XDD ※ 引述《flarehunter (Range)》之銘言: : 我也用馬可夫鏈算了一次 : 因為大小對稱 所以2和12點視為同一個狀態 3和11點視為同一個狀態 : 每個狀態的機率分別是 : 2(12) 3(11) 4(10) 5(9) 6(8) 7 : --------------------------------- : 2 4 6 8 10 6 除以36 : 加上一個爆掉的狀態(X)總共有7個 : 把轉移機率列一列就會變成下面的表 : X 2 3 4 5 6 7 : ------------------------------ : X| 36 0 1 3 6 10 15 : 2| 0 2 1 1 1 1 1 : 3| 0 4 4 2 2 2 2 : 4| 0 6 6 6 3 3 3 (每個值都除以36) : 5| 0 8 8 8 8 4 4 : 6| 0 10 10 10 10 10 5 : 7| 0 6 6 6 6 6 6 : 把這個矩陣叫做A好了 : 那一開始的點數機率就叫x好了 不如就設個 [0 2 4 6 8 10 6]' ./ 36吧 : 衝到第10關的機率分布就會是 A^10 * x : 第一項就是爆掉的機率 經過快速的計算就是0.9215 : 衝到第25關爆掉的機率就是0.9984 : 如果有無限1花的話 轉移機率就會是 : X 2 3 4 5 6 7 : ------------------------------ : X| 36 0 0 1 3 6 10 : 2| 0 2 2 1 1 1 1 : 3| 0 4 4 4 2 2 2 : 4| 0 6 6 6 6 3 3 (每個值都除以36) : 5| 0 8 8 8 8 8 4 : 6| 0 10 10 10 10 10 10 : 7| 0 6 6 6 6 6 6 : 用一樣的方法算一算 : 衝到第10關爆掉是0.7459 : 25關是0.9683 : 無限3花的話就不列轉移矩陣了... : 結果整理一下 爆掉的機率如下 (原PO格式借我一下XD) : 第10關 第25關 : 完全不使用花/草/星的情況 92.15% 99.84% : 最高使用1花的情況 74.59% 96.83% : 最高使用3花的情況 19.98% 42.77% -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.162.102.252

03/10 21:26, , 1F
有無限花五 成功率100%
03/10 21:26, 1F

03/10 21:27, , 2F
花5也怕眼殘.. 所以我都留5星 反正用不到也沒差
03/10 21:27, 2F

03/10 21:28, , 3F
有無限星,沒有失敗率這種事。
03/10 21:28, 3F

03/10 21:31, , 4F
跟我算的一樣,應該是對的。
03/10 21:31, 4F

03/10 21:31, , 5F
有沒有興趣看看我的程式碼,五十幾行就搞定了=w=
03/10 21:31, 5F

03/10 21:33, , 6F
敢瞧不起樓上ID的人已經被21了
03/10 21:33, 6F

03/10 21:36, , 7F
樓樓上可以告訴我 Devc++ 4.9.9.2 版 如何監看陣列嗎?
03/10 21:36, 7F

03/10 21:36, , 8F
只要用變數宣告的陣列 監看時都會變成 記憶體位置耶
03/10 21:36, 8F

03/10 21:37, , 9F
不過,你的程式碼通通沒註解,旁人真要幫debug會很辛苦吧XD
03/10 21:37, 9F

03/10 21:37, , 10F
例如 a=5; int A[a]; A[1]=1 我要監看A[1]的時候會變位置
03/10 21:37, 10F

03/10 21:38, , 11F
不可以~因為我也不知道為什麼我怪怪的XDD
03/10 21:38, 11F

03/10 21:39, , 12F
= = 我是有偷吃步拉 打成*(A[0]+1) 就可以監看A[1]的值
03/10 21:39, 12F

03/10 21:39, , 13F
不過不是很方便 面對二維陣列 還要算一下 DEV 真難用
03/10 21:39, 13F

03/10 21:41, , 14F
聽說dev有一些bug,不過我是很初階的使用者,所以也不清楚
03/10 21:41, 14F

03/10 21:41, , 15F
哦50行搞定啊那貼上來看看啊~
03/10 21:41, 15F

03/10 21:41, , 16F
我只是不小心搶到這個ID而已XDD
03/10 21:41, 16F

03/10 21:43, , 17F
http://ppt.cc/wPV6 我沒有註解,介面也沒有很人性化XD
03/10 21:43, 17F

03/10 21:43, , 18F
我想試試看code能不能在沒有註解也可以被看懂XD
03/10 21:43, 18F

03/10 21:48, , 19F
只有試跑了一下 變數名稱太隨意懶的看wwww
03/10 21:48, 19F

03/10 21:48, , 20F
大致上是看的懂啦~
03/10 21:48, 20F

03/10 21:49, , 21F
chipson不定大小的陣列要用new或是malloc要記憶體吧
03/10 21:49, 21F

03/10 21:50, , 22F
噢對了我的程式也可以算有限花1和花3的失敗率
03/10 21:50, 22F

03/10 21:50, , 23F
喔 對了 我是用 C語言 可能無法用NEW malloc我試過
03/10 21:50, 23F

03/10 21:50, , 24F
資工人來推一下XD
03/10 21:50, 24F

03/10 21:50, , 25F
一樣是無法監看
03/10 21:50, 25F

03/10 21:50, , 26F
阿 我指的是D大不是原PO
03/10 21:50, 26F

03/10 21:54, , 27F
推~
03/10 21:54, 27F

03/10 21:54, , 28F
我的加上註解的版本 http://ppt.cc/WKmb
03/10 21:54, 28F
文章代碼(AID): #1FMrOzAj (Unlight)
討論串 (同標題文章)
文章代碼(AID): #1FMrOzAj (Unlight)