AT_abc280_e [ABC280E] Critical Hit

Description

[problemUrl]: https://atcoder.jp/contests/abc280/tasks/abc280_e 最初、体力が $ N $ であるモンスターが $ 1 $ 体います。 高橋君はモンスターに対し、モンスターの体力が $ 1 $ 以上残っている限り繰り返し攻撃を行います。 高橋君は $ 1 $ 回の攻撃で、$ \frac{P}{100} $ の確率でモンスターの体力を $ 2 $ 減らし、 $ 1-\frac{P}{100} $ の確率でモンスターの体力を $ 1 $ 減らします。 モンスターの体力が $ 0 $ 以下になるまでに行う攻撃回数の期待値を $ \text{mod\ }\ 998244353 $ で出力してください(注記参照)。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ P $

Output Format

高橋君の攻撃回数の期待値を $ \text{mod\ }\ 998244353 $ で出力せよ。

Explanation/Hint

### 注記 求める期待値は必ず有限値かつ有理数となることが証明できます。また、この問題の制約下では、その値を互いに素な $ 2 $ つの整数 $ P $, $ Q $ を用いて $ \frac{P}{Q} $ と表したとき、$ R\ \times\ Q\ \equiv\ P\pmod{998244353} $ かつ $ 0\ \leq\ R\ \lt\ 998244353 $ を満たす整数 $ R $ がただ一つ存在することが証明できます。この $ R $ を出力してください。 ### 制約 - $ 1\ \leq\ N\ \leq\ 2\times\ 10^5 $ - $ 0\ \leq\ P\ \leq\ 100 $ - 入力は全て整数 ### Sample Explanation 1 高橋君は $ 1 $ 回の攻撃で、 $ \frac{10}{100}=\frac{1}{10} $ の確率でモンスターの体力を $ 2 $ 減らし、 $ 1-\frac{10}{100}=\frac{9}{10} $ の確率でモンスターの体力を $ 1 $ 減らします。 - 最初、モンスターの体力は $ 3 $ です。 - $ 1 $ 回目の攻撃の後、$ \frac{9}{10} $の確率でモンスターの体力は $ 2 $、$ \frac{1}{10} $の確率でモンスターの体力は $ 1 $ となります。 - $ 2 $ 回目の攻撃の後、$ \frac{81}{100} $の確率でモンスターの体力は $ 1 $、$ \frac{18}{100} $ の確率でモンスターの体力は $ 0 $、$ \frac{1}{100} $ の確率でモンスターの体力は $ -1 $ となります。 $ \frac{18}{100}+\frac{1}{100}=\frac{19}{100} $ の確率で体力は $ 0 $ 以下となり、高橋君は $ 2 $ 回で攻撃をやめます。 - $ 2 $ 回目の攻撃の後で体力が $ 1 $ 残っている場合、$ 3 $ 回目の攻撃の後でモンスターの体力は必ず $ 0 $ 以下となり、高橋君は $ 3 $ 回で攻撃をやめます。 よって、期待値は $ 2\times\ \frac{19}{100}+3\times\left(1-\frac{19}{100}\right)=\frac{281}{100} $ となります。$ 229596204\ \times\ 100\ \equiv\ 281\pmod{998244353} $ であるため、$ 229596204 $ を出力します。 ### Sample Explanation 2 高橋君は $ 1 $ 回の攻撃で、つねにモンスターの体力を $ 2 $ 減らします。 $ 2 $ 回目の攻撃が終わった時点では体力が $ 5-2\times\ 2=1 $ 残っているため、$ 3 $ 回目の攻撃を行う必要があります。