欢迎光临散文网 会员登陆 & 注册

The 2022 ICPC Asia Hangzhou Regional Programming Contest C. No B

2022-12-07 20:37 作者:Asunataisiki  | 我要投稿

题意:n个物品,背包容量为k,对于第i个物品有其体积p_i,对于任意t%5Cin%20%5B1%2Cp_i%5D,都有其对应的价值w_%7Bi%2Ct%7D,若当前背包可以装下整个物品,那么就可以获得w_%7Bi%2Cp%5Bi%5D%7D的价值,否则获得w_%7Bi%2Ck-sum%7D(sum%E4%B8%BA%E5%BD%93%E5%89%8D%E8%A3%85%E5%85%A5%E7%89%A9%E5%93%81%E7%9A%84%E6%80%BB%E4%BD%93%E7%A7%AF),求最大价值


思路:很显然的01背包问题,但是要注意到,如果能装下整个物品那么必须装入整个物品,否则才能装入部分物品,因此只可能会有一个物品被选择了一部分体积的价值,而剩下的被选择的物品一定是被选择了全部体积的价值,因此可以定义dp_%7Bi%2Cj%2Ck%7D表示前i个物品,体积为j,前i个物品中是否有选择部分体积的物品(0表示没有选过,1表示选过)


The 2022 ICPC Asia Hangzhou Regional Programming Contest C. No B的评论 (共 条)

分享到微博请遵守国家法律