#ATarc145f. [ARC145F] Modulo Sum of Increasing Sequences

[ARC145F] Modulo Sum of Increasing Sequences

题目描述

请你求出满足以下条件的长度为 NN 的广义单调递增序列 A=(A1,A2,,AN)A=(A_1,A_2,\ldots,A_N) 的个数,并对 998244353998244353 取模,分别输出每个 K=0,1,,MOD1K=0,1,\ldots,\mathrm{MOD}-1 时的答案。

  • AA 的每个元素都是 00MM 之间的整数。
  • AA 的所有元素之和除以 MOD\mathrm{MOD} 的余数等于 KK

广义单调递增序列指的是,对于一个序列 BB,若其长度为 B|B|,对于所有 1iB11\leq i\leq |B|-1,都有 BiBi+1B_i\leq B_{i+1},则 BB 是广义单调递增序列。

输入格式

输入一行,包含三个整数:

NN MM MOD\mathrm{MOD}

输出格式

请输出 MOD\mathrm{MOD} 行。第 KK 行(K=0,1,,MOD1K=0,1,\ldots,\mathrm{MOD}-1)输出满足条件且元素和模 MOD\mathrm{MOD} 等于 KK 的广义单调递增序列的个数,对 998244353998244353 取模。

样例 1

输入

2 2 4

输出

2 1 2 1

样例 2

输入

3 45 3

输出

5776 5760 5760

样例 3

输入

1000000 1000000 6

输出

340418986 783857865 191848859 783857865 340418986 635287738

说明/提示

数据范围

  • 1N,M1061\leq N,M\leq 10^6
  • 1MOD5001\leq \mathrm{MOD}\leq 500
  • 输入均为整数

样例解释 1

所有由 0022 之间的整数构成的长度为 22 的广义单调递增序列有 66 种,分别为 (0,0),(0,1),(0,2),(1,1),(1,2),(2,2)(0,0),(0,1),(0,2),(1,1),(1,2),(2,2)

  • 元素和模 44 等于 00 的有 22 种:(0,0),(2,2)(0,0),(2,2)
  • 元素和模 44 等于 11 的有 11 种:(0,1)(0,1)
  • 元素和模 44 等于 22 的有 22 种:(0,2),(1,1)(0,2),(1,1)
  • 元素和模 44 等于 33 的有 11 种:(1,2)(1,2)

题目描述

请输出对 998244353998244353 取模的答案。

由 ChatGPT 4.1 翻译