#262. [R42G]逆序对

[R42G]逆序对

时空限制

1S/512M

题目描述

给定两个整数 nnmm,请计算有多少个长度为 nn 的排列 pp,满足其逆序对的数量恰好为 mm

由于答案可能很大,请输出答案对 998244353998244353 取模的结果。

  • 排列:长度为 nn 的排列是一个包含 11nn 所有整数且不重复的序列。
  • 逆序对:对于排列 pp,如果存在二元组 (i,j)(i,j) 满足 1i<jn1 \le i < j \le npi>pjp_i > p_j,则称 (i,j)(i,j) 为一个逆序对。

格式

输入格式

第一行包含两个整数 n,mn, m,分别表示排列的长度和要求的逆序对数量。

输出格式

输出一行一个整数,表示满足条件的排列数量对 998244353998244353 取模的结果。

样例

样例输入 #1

3 1

样例输出 #1

2

样例输入 #2

4 3

样例输出 #2

6

样例解释 #1

长度为 33 的排列共有 66 种,其逆序对数量如下:

  • 1 2 3:0 个
  • 1 3 2:1 个 (3,2)(3,2)
  • 2 1 3:1 个 (2,1)(2,1)
  • 2 3 1:2 个 (2,1),(3,1)(2,1), (3,1)
  • 3 1 2:2 个 (3,1),(3,2)(3,1), (3,2)
  • 3 2 1:3 个 (3,2),(3,1),(2,1)(3,2), (3,1), (2,1)

其中逆序对数量恰好为 11 的排列有 1 3 22 1 3,共 22 个。

数据规模

注意:你只有通过了子任务的所有测试点,才能获得对应子任务的分数。

子任务编号 分数 nn \le mm \le
11 1010 1010 4545
22 2020 50005000 50005000
33 2020 101810^{18} 100100
44 5050 50005000

对于 100%100\% 的数据:1n10181 \le n \le 10^{18}0mmin(n(n1)2,5000)0 \le m \le \min(\frac{n(n-1)}{2}, 5000)