AtCoder Beginner Contest 263 E問題 Sugoroku 3
問題
提出解答
問題の概要
マス からマス からなるマスがある. 最初, マス にいる.
マス からマス にはサイコロが1個あり, マス にあるサイコロには 以上 以下の整数が等確率で出る (毎回独立).
マス に到達するまでサイコロを振り, 出た目だけマスを進むことにする. サイコロを振る回数の期待値を求めよ.
制約
解法
に対して, でマス から始めた場合にマス に到達するまでのサイコロを振る回数の期待値とする.
まず, である. 次に, に対して, マス から進めるのはマス の 個であり, それぞれ の確率であるから,
である. この式を整理すると,
となる.
ここで, を求めるときには の和という区間和を求めることになる. このような区間和には Binary Indexed Tree を利用することにより, 各 に対して を で求めることができる.
従って, 適切な前計算の元で, を 時間で求めることができる.
また, を求めた後, それ以降は が変わることはないということから, 累積和を利用することにより, 時間でも求めることができる.