今天真是个糟糕的一天。。。
早上好不容易完全理解了一下分组背包,早上反复交然后AC了一道题之后,在下午第一题就是考分组背包。我一眼就看出来了。
接着,我行云流水打一遍了过后谨慎地交了一次题。结果WA了。
然后我想到这有可能要变一下形,因为它在同一组中也能多选,只是每一组都要选一个。
然后,还是没A
二维费用
有N件物品和一个空间容量为C,重量容量为W的背包,第 i 件物品的空间费用为c[i] ,重量费用为 wi,价值是 vi,每种物品仅有一件,可以选择放或不放,求将哪些物品装入背包可使价值总和最大
很简单,加一个循环
分组背包
有N件物品和一个容量为C的背包,第 i 件物品的空间费用为c[i] ,价值是 vi,这些物品被划分为若干组,每组中的物品互相冲突,最多选一件,求将哪些物品装入背包可使价值总和最大
问题转化为:是选择本组的一件,还是一件都不选?
在01背包的基础上加一层循环,枚举组数,前面要预处理。
依赖背包
物品间存在某种“依赖”的关系,若i1依赖于i2,表示若选物品i1(附件),则必须选物品i2(主件)
主件和附件的概念,只有放了主件之后才能放与之相关联的附件
就是主件和附件的关系,要选附件就也得选主件
可以先对每种主件的 附件的集合 进行一次 01 背包处理,就可以先求出 对于每一种主件包括其附件的组合中,每种花费的最大价值
下午
A题
分组背包
B题
不知道是啥背包,但我就A了?
C题
毒瘤题
D题
典型依赖