#arc145f. [arc145_f]Modulo Sum of Increasing Sequences

[arc145_f]Modulo Sum of Increasing Sequences

题目描述

给定长度为NN的序列 A=(A1,A2,,AN)A=(A_1,A_2,\ldots,A_N),其中每个元素都是介于00MM之间(包括00MM)的整数。对于每个K=0,1,,MOD1K=0,1,\ldots,\mathrm{MOD}-1,找出满足以下条件的序列AA的数量,模998244353998244353

  • 序列AA中元素的和在模mathrmMOD\\mathrm{MOD}意义下与KK同余。

什么是递增序列?如果对于每个整数ii (1iB1)(1 \leq i \leq |B| - 1),都有BiBi+1B_i \leq B_{i+1},其中B|B|是序列BB的长度,则序列BB称为递增序列。

约束条件

  • 1N,M1061 \leq N ,M \leq 10^6
  • 1MOD5001\leq \mathrm{MOD}\leq 500
  • 输入中的所有值都为整数。

输入

输入以以下格式从标准输入给出:

NN MM MOD\mathrm{MOD}

输出

对于每个 K=0,1,,MOD1K=0,1,\ldots,\mathrm{MOD}-1,以模998244353998244353的形式打印满足条件的序列的数量。

示例输入1

2 2 4

示例输出1

2 1 2 1

共有66个长度为22的递增序列,由介于0022之间的整数组成: (0,0),(0,1),(0,2),(1,1),(1,2),(2,2)(0, 0), (0, 1),(0,2), (1,1),(1,2),(2,2)。其中:

  • 22个序列的和在模44意义下与00同余: (0,0),(2,2)(0,0),(2,2)
  • 11个序列的和在模44意义下与11同余:(0,1)(0,1)
  • 22个序列的和在模44意义下与22同余:(0,2),(1,1)(0,2),(1,1)
  • 11个序列的和在模44意义下与33同余:(1,2)(1,2)

示例输入2

3 45 3

示例输出2

5776 5760 5760

示例输入3

1000000 1000000 6

示例输出3

340418986 783857865 191848859 783857865 340418986 635287738

将计数值打印为模998244353998244353的形式。