时空限制
1S/512M
题目描述
给定两个整数 n 和 m,请计算有多少个长度为 n 的排列 p,满足其逆序对的数量恰好为 m。
由于答案可能很大,请输出答案对 998244353 取模的结果。
- 排列:长度为 n 的排列是一个包含 1 到 n 所有整数且不重复的序列。
- 逆序对:对于排列 p,如果存在二元组 (i,j) 满足 1≤i<j≤n 且 pi>pj,则称 (i,j) 为一个逆序对。
格式
输入格式
第一行包含两个整数 n,m,分别表示排列的长度和要求的逆序对数量。
输出格式
输出一行一个整数,表示满足条件的排列数量对 998244353 取模的结果。
样例
样例输入 #1
3 1
样例输出 #1
2
样例输入 #2
4 3
样例输出 #2
6
样例解释 #1
长度为 3 的排列共有 6 种,其逆序对数量如下:
1 2 3:0 个
1 3 2:1 个 (3,2)
2 1 3:1 个 (2,1)
2 3 1:2 个 (2,1),(3,1)
3 1 2:2 个 (3,1),(3,2)
3 2 1:3 个 (3,2),(3,1),(2,1)
其中逆序对数量恰好为 1 的排列有 1 3 2 和 2 1 3,共 2 个。
数据规模
注意:你只有通过了子任务的所有测试点,才能获得对应子任务的分数。
| 子任务编号 |
分数 |
n≤ |
m≤ |
| 1 |
10 |
10 |
45 |
| 2 |
20 |
5000 |
5000 |
| 3 |
20 |
1018 |
100 |
| 4 |
50 |
5000 |
对于 100% 的数据:1≤n≤1018,0≤m≤min(2n(n−1),5000)。