#P7511. 三到六

三到六

背景

「听说 JOJO 6 要来力!」
「好时代,来临力!」
「可是那个无敌的男人……」
「啊……在吃刀子之前,让我重温一下『欧拉欧拉』……」

题目描述

给定整数 n,kn,k 和一个 nn 阶排列 π′\pi',问多少个 nn 阶排列 π\pi 满足恰有 kk 个位置 ii 满足 1≤i≤n1 \le i \le n 且 πi<ππi′\pi_i < \pi_{\pi'_i}。答案对 998244353998244353 取模。

输入格式

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

第二行,nn 个正整数,表示 π′\pi'。

输出格式

一行,一个非负整数,表示满足条件的 π\pi 的数量。

5 0
1 2 3 4 5
120
5 1
2 3 4 5 1
5
5 2
2 4 5 1 3
60

提示

样例解释

对于第一组样例,πi\pi_i 不可能小于 πi\pi_i,故必然满足条件,则答案为 5!=1205! = 120。

对于第二组样例,有以下 55 种 π\pi 满足条件:

  1. 1234512345;
  2. 2345123451;
  3. 3451234512;
  4. 4512345123;
  5. 5123451234。

对于第三组样例,不予解释。

数据范围

对于 20%20\% 的数据,n≤10n \le 10。

对于 40%40\% 的数据,n≤3×102n \le 3 \times 10^2。

对于 60%60\% 的数据,n≤103n \le 10^3。

对于另外 20%20\% 的数据,保证 πi′=i mod n+1\pi'_i = i \bmod n + 1(1≤i≤n1 \le i \le n)。

对于 100%100\% 的数据,1≤n≤2×1051 \le n \le 2 \times 10^5,0≤k≤n0 \le k \le n。