求助,只有20分
查看原帖
求助,只有20分
1339889
pjh0625楼主2024/11/9 22:53
#include <bits/stdc++.h>
using namespace std;

const int MOD = 123456;
const int MAXN = 501;

int dp[MAXN][MAXN][2];

int main() {
    int n, k;
    cin >> n >> k;
    dp[1][0][0] = dp[1][0][1] = 1;
    for (int i = 2; i <= n; ++i) {
        for (int j = 0; j <= k; ++j) {
            for (int x = 1; x < i; ++x) {
                dp[i][j][0] = (dp[i][j][0] + dp[x][j][0] + dp[x][j - 1][1]) % MOD;
                dp[i][j][1] = (dp[i][j][1] + dp[x][j][1] + dp[x][j - 1][0]) % MOD;
            }
        }
    }
    cout << (dp[n][k][0] + dp[n][k][1]) % MOD << endl;
    return 0;
}
2024/11/9 22:53
加载中...