トップページ > プログラム > 2014年10月14日 > n56qJH47

書き込み順位&時間帯一覧

28 位/169 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000101000002



使用した名前一覧書き込んだスレッド一覧
276
デフォルトの名無しさん
プログラミングのお題スレ Part5

書き込みレス一覧

プログラミングのお題スレ Part5
292 :276[sage]:2014/10/14(火) 16:43:51.64 ID:n56qJH47
>>291
私の解答より素晴らしいです
以下が用意してた解答です

次のようにして早く、精度の良い答えが得られます

マスに0ベースのインデックスを振るとし、
e[i] = iマスからgoalまでのターン数の期待値
という配列eを想定します
すると、 e[0] について次のような式が建てられます
e[0] = 1 + (e[1+3] + e[2] + e[3+5] + e[4] + e[5] + (1 + e[6])) / 6
(スゴロクのマスと見比べてみると意味がわかると思います)
同様にすべてのマスについてこのような式ができます
ゴールマスについてはすでにgoalに着いているという意味で
e[17] = 0
となります
以上を踏まえるとこの問題は
「e[0],..,e[17]についての連立方程式を解き、e[0] の具体的な値を求める」
という問題に帰着します

私は連立方程式の解法とか詳しくないので
e[0],..,e[16]の式を何度も評価し、徐々に精度を上げるというアルゴリズムを書きました
http://ideone.com/QGi1OZ
40回ほどの反復で目的の精度になりました
プログラミングのお題スレ Part5
294 :デフォルトの名無しさん[sage]:2014/10/14(火) 18:26:26.41 ID:n56qJH47
>>290 c++
http://ideone.com/CLY9S3


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。