Each Digit Comparison 2

2 secs 1024 MB
Raclamusi's icon Raclamusi

まず、 CCAABB のどちらであるかを考えます。
CCA,BA,B のうちの大きいほうなので、 SS の最も左にある不等号を調べ、それが < なら A<BA \lt B より C=BC = B> なら A>BA \gt B より C=AC = A です。

C=AC = A のときについて考えます。
このとき、この問題は BB が何通りあるかを求めることになります。そこで、 BB の各桁について何通りあるかを考えます。
B,CB,C の左から ii 番目の桁をそれぞれ Bi,CiB_i,C_i とします。

  • SiS_i= のとき
    Bi=CiB_i = C_i11 通りしかありません。
  • SiS_i< のとき
    Ci<Bi9C_i \lt B_i \le 9(9Ci)(9 - C_i) 通りあります。
  • SiS_i> のとき
    いちばん左の桁の数字が 00 になることはありえないので、 i=1i = 1 のときは 1Bi<Ci1 \le B_i \lt C_i(Ci1)(C_i - 1) 通り、それ以外のときは 0Bi<Ci0 \le B_i \lt C_iCiC_i 通りです。

そして、各桁で出た答えをすべて掛けて 998244353998244353 で割った余りが答えになります。

また、 SiS_i の不等号の向きを変え、 AABB を置き換えて考えることで、 C=BC = B のときも同様に答えを求めることができます。