#agc054c. [agc054_c]Roughly Sorted

[agc054_c]Roughly Sorted

Snuke 有一个长度为 n(1n5000)n(1\le n\le5000) 的排列,他对它进行了如下操作:

  • 交换两个相邻的数,直到对于每个 ii ,有至多 k(1kn1)k(1\le k \le n-1)jj 满足 1j<i1\le j<ipj>pip_j>p_i

他最小化了他的操作数,但是他忘记了一开始的序列是什么了。

现在给你他操作完了的排列和 n,kn,k,问可能的原排列有多少种。答案对 998244353998244353 取模。