C - Nim is Time-consuming Editorial

Time Limit: 4 sec / Memory Limit: 1024 MB

配点 : 100100

問題文

UT 君と PC 君は Nim というゲームで遊んでいます。NN 個の正整数 A1,A2,,ANA_1, A_2,\ldots, A_N に対し、Nim(A1,A2,,AN)\mathrm{Nim}(A_1, A_2, \ldots, A_N) とは次のゲームのことを指します。

  • いくつかの石からなる NN 個の山があり、はじめ i (1iN)i\ (1\le i\le N) 番目の山には AiA_i 個の石がある。UT 君から始めて、22 人は交互に以下の操作を 11 回ずつ繰り返す。
    • (操作) 石が 11 個以上残っている山を 11 つ選ぶ。その山から石を 11 個以上取り除く。
  • 石が全て取り除かれた時点でゲームを終了し、最後に操作を行ったプレイヤーを勝ち、もう一方のプレイヤーを負けとする。
  • ゲーム開始時点からゲーム終了時点までに 22 人が行った操作の回数の合計を TT としたとき、勝ったプレイヤーが 10100T10^{100}-T 点、負けたプレイヤーが T10100T-10^{100} 点を得る。

1AiM (1iN)1 \le A_i \le M\ (1\le i\le N) を満たす長さ NN の整数列 (A1,A2,,AN)(A_1, A_2, \ldots, A_N)MNM^N 通りありますが、その全てに対して、22 人は 11 回ずつ Nim(A1,A2,,AN)\mathrm{Nim}(A_1, A_2, \ldots, A_N) を遊びます。

それぞれが全てのゲームで獲得する点数の合計を最大化するように行動したとき、これら MNM^N 回のゲームの操作回数の合計は何回になるでしょうか?答えは非常に大きくなる可能性があるので、998244353998244353 で割った余りを求めてください。

制約

  • 入力は全て整数
  • 1N1091 \le N \le 10^{9}
  • 1M5001 \le M \le 500

入力

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

NN MM

出力

答えを 11 行に出力せよ。


入力例 1Copy

Copy
2 2

出力例 1Copy

Copy
12

22 人は以下の 44 つのゲームを行います。

  • Nim(1,1)\mathrm{Nim}(1, 1)
  • Nim(1,2)\mathrm{Nim}(1, 2)
  • Nim(2,1)\mathrm{Nim}(2, 1)
  • Nim(2,2)\mathrm{Nim}(2, 2)

それぞれが最善を尽くした場合、各ゲームの操作回数はそれぞれ 22333344 になります。これらの合計である 1212 を出力します。


入力例 2Copy

Copy
4 5

出力例 2Copy

Copy
6748

入力例 3Copy

Copy
1 222

出力例 3Copy

Copy
222

入力例 4Copy

Copy
987654321 456

出力例 4Copy

Copy
897555885

答えの値を 998244353998244353 で割った余りを出力してください。



2025-04-14 (Mon)
09:24:27 +00:00