AtCoder Beginner Contest 300 E問題 Dice Product 3
問題
提出解答
問題の概要
面体の各目が同様に確からしく出るサイコロがある. 最初, である. 以下の行動を となる限り行う.
- サイコロを降って出た目を とする. そして, を 倍する.
行動終了後, となる確率を求めよ.
制約
解法
正の有理数 に対して, で とできる確率とする.
まず, であり, が整数ではないならば, である.
以上の整数 に対して, 各目で場合分けすることにより,
となる.
ここで, 左辺と右辺に が現れているが, 整理することによって,
となる.
に現れる素因数は である. そして,
となるから, の計算に必要な引数のうち, 整数になるのは高々 個であり, 深さは高々 である.
よって, 整数でない における はすぐに を返すようにメモ化再起を計算することによって, を 時間で計算できる.