#P11985. 圣诞

圣诞

题目背景

小 L 给梓送了一个长度为 nn 的排列 pp 作为圣诞礼物。

题目描述

对于 1lnk+11\le l\le n-k+1,定义操作 kxmas(l)k-\operatorname{xmas}(l) 表示把排列区间 [l,l+k1][l,l+k-1] 中的最大值与次大值交换。

定义一个排列是好的,当且仅当这个排列可以通过对 pp 做有限次 kxmask-\operatorname{xmas} 操作得到。

小 L 希望你能输出好的排列的数量对 998244353998244353 取模的结果。

输入格式

第一行两个正整数 n,kn,k

第二行 nn 个正整数 pip_i

输出格式

一行一个整数表示答案。

样例

ex_xmas0.in
3 3
2 3 1
ex_xmas0.out
2
ex_xmas1.in
6 4
6 4 2 1 3 5
ex_xmas1.out
24
ex_xmas2.in
12 3
1 2 3 4 5 6 7 8 9 10 11 12
ex_xmas2.out
518400
ex_xmas3.in/out
见下发文件,满足 Subtask4 的限制
ex_xmas4.in/out
见下发文件,满足 Subtask6 的限制
ex_xmas5.in/out
见下发文件,满足 Subtask8 的限制

数据范围

对于所有测试点,满足 2kn2.5×1052\le k\le n\le 2.5\times 10^5

Subtask 特殊性质 分数
1 k=2k=2 4
2 n8n\le 8 12
3 pi=ip_i=ik=3k=3 4
4 pi=ip_i=i 20
5 pip_i 先减后增,k=3k=3 8
6 pip_i 先减后增 28
7 n2000n\le 2000 12
8 无特殊性质