#arc145f. [arc145_f]Modulo Sum of Increasing Sequences

[arc145_f]Modulo Sum of Increasing Sequences

問題文

00 以上 MM 以下の整数からなる長さ NN の広義単調増加列 A=(A1,A2,ldots,AN)A=(A_1,A_2,\\ldots,A_N) のうち、以下を満たすものの個数を 998244353998244353 で割ったあまりを各 K=0,1,ldots,mathrmMOD1K=0,1,\\ldots,\\mathrm{MOD}-1 に対して求めてください。

  • AA の要素の総和を mathrmMOD\\mathrm{MOD} で割ったあまりが KK に等しい。

広義単調増加列とは ある数列 BB について、 BB の長さを B|B| としたとき、全ての整数 ii (1leileB11 \\le i \\le |B| - 1) について、 BileqBi+1B_i \\leq B_{i+1} が成り立つとき、またそのときに限って、 BB は広義単調増加列です。

制約

  • 1leqN,Mleq1061 \\leq N ,M\\leq 10^6
  • 1leqmathrmMODleq5001\\leq \\mathrm{MOD}\\leq 500
  • 入力は全て整数

入力

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

NN MM mathrmMOD\\mathrm{MOD}

出力

K=0,1,ldots,mathrmMOD1K=0,1,\\ldots,\\mathrm{MOD}-1 に対して、条件を満たす数列の個数を 998244353998244353 で割ったあまりを出力せよ。


入力例 1

2 2 4

出力例 1

2 1 2 1

00 以上 22 以下の整数からなる長さ 22 の広義単調増加列は (0,0),(0,1),(0,2),(1,1),(1,2),(2,2)(0, 0), (0, 1),(0,2), (1,1),(1,2),(2,2)66 通りです。

  • 総和を 44 で割ったあまりが 00 のもの:(0,0),(2,2)(0,0),(2,2)22 通り

  • 総和を 44 で割ったあまりが 11 のもの:(0,1)(0,1)11 通り

  • 総和を 44 で割ったあまりが 22 のもの:(0,2),(1,1)(0,2),(1,1)22 通り

  • 総和を 44 で割ったあまりが 33 のもの:(1,2)(1,2)11 通り

です。


入力例 2

3 45 3

出力例 2

5776 5760 5760

入力例 3

1000000 1000000 6

出力例 3

340418986 783857865 191848859 783857865 340418986 635287738

998244353998244353 で割ったあまりを答えてください。