题目描述
有 N 个编号为 1 到 N 的球。球 i 被涂上颜色 ai。
对于排列 P=(P1,P2,…,PN),当球 P1,P2,…,PN 按照这个顺序排成一行时,定义 C(P) 如下:
令 SN 表示所有的排列 (1,2,…,N) 的集合。同时,定义 F(k) 如下:
$\\displaystyle F(k) = \\left(\\sum_{P \\in S_N}C(P)^k \\right) \\bmod 998244353$。
枚举 F(1),F(2),…,F(M)。
约束条件
- 2≤N≤2.5×105
- 1≤M≤2.5×105
- 1≤ai≤N
- 输入中的所有值均为整数。
输入
输入以以下格式从标准输入中给出:
N M
a1 a2 … aN
输出
按照以下格式输出答案:
F(1) F(2) … F(M)
示例输入 1
3 4
1 1 2
示例输出 1
8 12 20 36
下面是所有可能的 (P,C(P)) 对的列表。
- 如果 P=(1,2,3),则 C(P)=1。
- 如果 P=(1,3,2),则 C(P)=2。
- 如果 P=(2,1,3),则 C(P)=1。
- 如果 P=(2,3,1),则 C(P)=2。
- 如果 P=(3,1,2),则 C(P)=1。
- 如果 P=(3,2,1),则 C(P)=1。
我们可以通过将这些值分配给 F(k) 来获得答案。例如,F(1)=11+21+11+21+11+11=8。
示例输入 2
2 1
1 1
示例输出 2
0
示例输入 3
10 5
3 1 4 1 5 9 2 6 5 3
示例输出 3
30481920 257886720 199419134 838462446 196874334