atcoder#ABC280E. [ABC280E] Critical Hit
[ABC280E] Critical Hit
配点 : 点
問題文
最初、体力が であるモンスターが 体います。 高橋君はモンスターに対し、モンスターの体力が 以上残っている限り繰り返し攻撃を行います。
高橋君は 回の攻撃で、 の確率でモンスターの体力を 減らし、 の確率でモンスターの体力を 減らします。
モンスターの体力が 以下になるまでに行う攻撃回数の期待値を で出力してください(注記参照)。
注記
求める期待値は必ず有限値かつ有理数となることが証明できます。また、この問題の制約下では、その値を互いに素な つの整数 , を用いて と表したとき、 かつ を満たす整数 がただ一つ存在することが証明できます。この を出力してください。
制約
- 入力は全て整数
入力
入力は以下の形式で標準入力から与えられる。
出力
高橋君の攻撃回数の期待値を で出力せよ。
3 10
229596204
高橋君は 回の攻撃で、 の確率でモンスターの体力を 減らし、 の確率でモンスターの体力を 減らします。
- 最初、モンスターの体力は です。
- 回目の攻撃の後、の確率でモンスターの体力は 、の確率でモンスターの体力は となります。
- 回目の攻撃の後、の確率でモンスターの体力は 、 の確率でモンスターの体力は 、 の確率でモンスターの体力は となります。 の確率で体力は 以下となり、高橋君は 回で攻撃をやめます。
- 回目の攻撃の後で体力が 残っている場合、 回目の攻撃の後でモンスターの体力は必ず 以下となり、高橋君は 回で攻撃をやめます。
よって、期待値は $2\times \frac{19}{100}+3\times\left(1-\frac{19}{100}\right)=\frac{281}{100}$ となります。 であるため、 を出力します。
5 100
3
高橋君は 回の攻撃で、つねにモンスターの体力を 減らします。 回目の攻撃が終わった時点では体力が 残っているため、 回目の攻撃を行う必要があります。
280 59
567484387