求大佬帮帮,只有20分
查看原帖
求大佬帮帮,只有20分
1173500
JINHUUI楼主2024/10/8 21:41

求大佬帮帮, 只有20分。

#include <iostream>
#include <algorithm>

using namespace std;

const int N = 1e3 + 10;

int n, x;
int w1[N], w2[N], v[N];
int dp[N][N];

int main(){
    
    cin >> n >> x;
    
    for(int i = 1;i <= n;i++)    cin >> w1[i] >> w2[i] >> v[i];
    
    for(int i = 1;i <= n;i++)
        for(int j = 0;j <= x;j++){
            dp[i][j] = dp[i - 1][j];
            if(j >= v[i]){
                dp[i][j] = max(dp[i][j], dp[i - 1][j - v[i]] + w2[i]);
                for(int k = 0;k < v[i];k++)    dp[i][j] = max(dp[i][j], dp[i - 1][j - k] + w1[i]);
            }
        }
    
    cout << 5 * dp[n][x] << endl;
    
    return 0;
}
2024/10/8 21:41
加载中...