#P15740. [JAG 2024 Summer Camp #2] Linear Time Inversion Number

[JAG 2024 Summer Camp #2] Linear Time Inversion Number

说明

给定一个长度为 NN 的排列 P\boldsymbol{P},Alice 使用逆序数来衡量 P\boldsymbol{P} 与排列 (1,2,,N)(1, 2, \ldots, N) 的接近程度,而 Bob 则使用度量 12i=1NPii\frac{1}{2} \sum_{i=1}^{N} |P_i - i|

这里,逆序数是指满足 i<ji < jPi>PjP_i > P_j(i,j)(i, j) 对的数量。

给定一个长度为 KK 的序列 A=(A1,A2,,AK)\boldsymbol{A} = (A_1, A_2, \ldots, A_K),存在 (NK)!(N - K)! 个长度为 NN 的排列以 A\boldsymbol{A} 作为其前缀。

找出这些排列中,Alice 的度量与 Bob 的度量相等的排列数量,并将结果对 998,244,353998,244,353 取模后返回。

输入格式

输入以如下格式给出:

$$\begin{aligned} &N \ K \\ &A_1 \ A_2 \ \ldots \ A_K \end{aligned}$$
  • 1N200,0001 \leq N \leq 200,000
  • 0KN0 \leq K \leq N
  • 1AiN(1iK)1 \leq A_i \leq N \quad (1 \leq i \leq K)
  • AiAj(ij)A_i \neq A_j \quad (i \neq j)
  • 所有输入值均为整数。

输出格式

输出答案。

5 3
2 3 5
1
10 10
3 1 4 5 9 2 6 8 7 10
0
6 0
132

提示

翻译由 DeepSeek V3.2 完成