atcoder#ABC224F. [ABC224F] Problem where +s Separate Digits

[ABC224F] Problem where +s Separate Digits

配点 : 500500

問題文

11 から 99 までの数字のみで構成された文字列 SS が与えられます。 この文字列 SS から、以下の操作によって式 TT を作ります。

  • はじめ、 T=ST=S であるとする。
  • 各要素が 11 以上 S1|S|-1 以下の整数である、値に重複のない集合 AA を選ぶ。なお、 AA が空集合であってもよい。
  • AA の全ての要素 xx について、 xx の降順に以下の操作を行う。- TTxx 文字目と x+1x+1 文字目の間に、 + を挿入する。

例えば、 S=S= 1234A={2,3}A= \lbrace 2,3 \rbrace であるとき、 TT= 12+3+4 となります。

この操作によって得られる TT としてあり得る全ての式に対して、式を計算したときの値の総和を 998244353998244353 で割った余りを求めてください。

制約

  • 1S2×1051 \le |S| \le 2 \times 10^5
  • SS1, 2, 3, 4, 5, 6, 7, 8, 9 のみからなる。

入力

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

SS

出力

答えを整数として出力せよ。

1234
1736

TT としてあり得るものは 1234, 123+4, 12+34, 12+3+4, 1+234, 1+23+4, 1+2+34, 1+2+3+488 つです。 これらを計算した値の総和は 17361736 です。

1
1

SS の長さが 11 であることもあります。この場合、 AA として指定可能なのは空集合のみです。

31415926535897932384626433832795
85607943

答えを 998244353998244353 で割った余りを求めてください。