H - Digit Slot Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 100

問題文

整数 N が与えられます。あなたは、整数 N に対して以下の操作1 回だけ行えます。

  • 操作 : N の桁のうち、いくつかの桁を選び( 0 個でも良い)、それらを全て独立に 0 ~ 9 のいずれかに等確率で置き換える。ただし、先頭に 0 が続く場合 leading zero として解釈する。

あなたの目的は、出来るだけ高い確率で N の値を操作前よりも大きくすることです。最適な戦略をとった場合に操作前の N よりも大きい数を得られる確率を \text{mod } 998244353 で求めてください。

確率 \text{mod } 998244353 の定義

この問題で求める確率は必ず有理数になることが証明できます。 また、この問題の制約下では、求める確率を既約分数 \frac{y}{x} で表したときに x998244353 で割り切れないことが証明できます。

このとき xz \equiv y \pmod{998244353} を満たすような 0 以上 998244352 以下の整数 z が一意に定まります。この z を答えてください。

制約

  • N1 以上 10^{200000} 未満の整数
  • N の先頭には余分な 0 は含まれない

入力

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

N

出力

答えを 1 行に出力せよ。


入力例 1

502

出力例 1

509104621

この場合、2 桁目と 3 桁目を選ぶのが最適で、 \frac{97}{100} の確率で 502 よりも大きい値を得ることができます。

このとき、100\times 509104621 \equiv 97 \pmod{998244353} が成り立つので、答えとして 509104621 を出力してください。


入力例 2

520

出力例 2

698771048

この場合、3 桁目を選ぶのが最適で、 \frac{9}{10} の確率で 520 よりも大きい値を得ることができます。