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

第46届icpc上海I题 Steadily Growing Steam

2022-02-01 19:21 作者:重生之我是菜狗  | 我要投稿

链接:https://ac.nowcoder.com/acm/contest/24872/I
来源:牛客网

题目描述

从n个元素中选任意个组成两个集合元素总体积(数值)相等的集合,求所有可能集合的元素价值之和的最大值。

额外条件为可以将最多k个数变为原来的2倍以有机会于构造更多元素组成的集合获得更大价值。


注意到为多过程多决策问题,且决策过程复杂,因此应该考虑动态规划

设f[i][j][k]:从前i个物品选,总体积定义为(大于base为左集合元素总体积大于右集合,小于则反之),且使用k次翻倍数值的机会所获收益的最大值,则max{f[n][base][i]}(0=<i<=k)为最大收益。


注意到这里体积定义方法为双方向选择背包体积dp相关问题的经典思维:定义为相对差值,而不是开两个维度分别记录所选数值,否则会超时且容易爆空间。



第46届icpc上海I题 Steadily Growing Steam的评论 (共 条)

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