CSDN第三期 第三题 题解

完全背包问题 加了一维限制

具体的看这动态规划之背包问题_Dream.Luffy的博客-CSDN博客_背包动态规划

#include<iostream>
using namespace std;
const int N= 1010, mod = 1e9 + 7;
int dp[N][N];
int main()
{
    int n, k;
    cin >>n >> k;
    dp[0][0] = 1; //体积为0也是一种解法
    for(int i = 1;i <= n;i ++) //枚举每一组物品
        for(int j = i;j <= n;j ++) //枚举体积
            for(int l = 1;l <= k;l ++) //枚举分几份物品
                {
                        dp[j][l] = (d[j][l] + dp[j - i][l - 1]) % mod; 
                }
        cout << dp[n][k];
    return 0;
}

猜你喜欢

转载自blog.csdn.net/m0_64226820/article/details/126450218