#include<iostream>
#include<algorithm>
using namespace std;
int f[5][9] = { 0 };
int w[5] = { 0,2,3,4,5 };//物品重量
int v[5] = { 0,3,4,5,8 };//物品价值
int main() {
//v=f(i,w)函数关系 i是能选的前几件物品 w是背包容量 v是总价值
for (int i = 1; i < 5; i++)//物品序号
{
for (int j = 1; j < 9; j++)//背包容量
{
if(j<w[i])
{
f[i][j] = f[i - 1][j];
}
else
{
f[i][j] = max(f[i - 1][j], f[i - 1][j - w[i]] + v[i]);
}
}
}
int max = f[0][0];
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 9; j++)
{
if (f[i][j] >= max)
max=f[i][j];
//cout << f[i][j] << " ";
}
}
cout << max;
return 0;
}