Title Description
Solution: two-dimensional cost backpack
#include <bits/stdc++.h>
using namespace std;
int v[51], w[51], calorie[51];
int dp[501][501];
int n, maxv, maxw;
int main()
{
cin >> maxv >> maxw;
cin >> n;
for(int i=1;i<=n;i++)
cin >> v[i] >> w[i] >> calorie[i];
for(int i=1;i<=n;i++)
for(int j=maxv;j>=v[i];j--)
for(int k=maxw;k>=w[i];k--)
dp[j][k] = max(dp[j][k], dp[j-v[i]][k-w[i]]+calorie[i]);
cout << dp[maxv][maxw];
return 0;
}