NC222133. 对序逆
描述
定义 序列两位置
是逆序对的条件是
且
。
小 喜欢魔改各种各样的排序,现在他乱搞出一种
求逆序对的新方法:
输入描述
两个整数。
输出描述
一个整数表示答案,对取模。
示例1
输入:
2 2
输出:
4
示例2
输入:
3 2
输出:
7
示例3
输入:
8 8
输出:
3305610
C++ 解法, 执行用时: 384ms, 内存消耗: 448K, 提交时间: 2021-06-05 21:54:08
#include<bits/stdc++.h> using namespace std; const int mod=998244353; int i,j,n,m,DP[2][10005]; int main() { scanf("%d%d",&n,&m); for(i=1;i<=m;i++)DP[1][i]=i; for(i=2;i<=n;i++) for(j=1;j<=m;j++)DP[i&1][j]=(DP[i&1][j-1]+DP[(i-1)&1][j]+(long long)DP[(i-1)&1][j-1]*(i-1))%mod; printf("%d\n",DP[n&1][m]); return 0; }