题意:
每件物品都有一定的满意度,而且物品分主件附件,要买附件就必须要买主件,但是买主件不一定要买附件(一个主件最多有两个附件,也可能没有喔)
设第j件物品的价格为v[j],重要度为w[j],共选中了k件物品,编号依次为j1,j2,……,jk,则所求的总和为:
v[j1]w[j1]+v[j2]*w[j2]+ …+v[jk]*w[jk]。(其中为乘号)
不超过N元(可以等于N元)的前提下,使每件物品的价格与重要度的乘积的总和最大。
怎么看着有点像树形DP…
但是我们如果不区分主件附件
就是…
背包?
好吧就是一维四状态的背包
代码:
#include <cstdio>
#include <cstring>
using namespace std;
int f[32010],v[70],q[70],p[70],v1[70],q