比赛 2025.1.4 评测结果 AAAAAAAAAA
题目名称 逆序对数列 最终得分 100
用户昵称 健康铀 运行时间 0.069 s
代码语言 C++ 内存使用 4.79 MiB
提交时间 2025-01-04 17:51:11
显示代码纯文本
#include <iostream>  
#include <cstdio>  
#include <cstring>  

#define N 1001  
#define MOD 10000  

using namespace std;  

int dp[N][N];  
int n, k;  

int main() {  
freopen("permut.in","r",stdin);
freopen("permut.out","w",stdout);
    scanf("%d%d", &n, &k);  
    for (int i = 1; i <= n; i++) {  
        dp[i][0] = 1;  
    }  
    for (int i = 2; i <= n; i++) {  
        int sum = 0;  
        
        for (int j = 0; j <= k; j++) {  
            (sum += dp[i - 1][j]) %= MOD;  
            dp[i][j] = sum;  
            if (j - i + 1 >= 0) {  
                (sum -= dp[i - 1][j - i + 1]) += MOD;  
                sum %= MOD;  
            }  
        }  
    }  
    printf("%d\n", dp[n][k]);  
    return 0;  
}