题目

acwing8. 二维费用的背包问题

题解

#include<iostream>
using namespace std;
const int N=1010;
int f[110][110];

int main(){
    int n,V,M;
    cin>>n>>V>>M;
    for(int i=0;i<n;i++){
        int v,m,w;
        cin>>v>>m>>w;
        for(int j=V;j>=v;j--){
            for(int k=M;k>=m;k--){
                f[j][k]=max(f[j][k],f[j-v][k-m]+w);
            }
            
        }
    }
    cout<<f[V][M]<<endl;
    
    return 0;
}