![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
A_Pathfinder
这个作者很懒,什么都没留下…
展开
-
第一讲:01背包
这是最基本的背包问题,每个物品最多只能放一次 样例://来源:http://ybt.ssoier.cn:8088/problem_show.php?pid=1267 一个旅行者有一个最多能装 MM 公斤的背包,现在有 nn 件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,...,Cn,求旅行者能获得最大总价值。 【...原创 2019-04-02 19:34:21 · 269 阅读 · 0 评论 -
第二讲:完全背包
在01背包的基础上,每种物品都无限件可以使用。 样例://来源:http://ybt.ssoier.cn:8088/problem_show.php?pid=1268 设有n种物品,每种物品有一个重量及一个价值。但每种物品的数量是无限的,同时有一个背包,最大载重量为M,今从n种物品中选取若干件(同一种物品可以多次选取),使其重量的和小于等于M,而价值的和为最大。 【输入】 第一行:两个整数...原创 2019-04-02 20:14:39 · 214 阅读 · 0 评论 -
第三讲:多重背包
有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是w[i],价值是c[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 基本算法: 这题目和完全背包问题很类似。基本的方程只需将完全背包问题的方程略微一改即可,因为对于第i种物品有n[i]+1种策略:取0件,取1件……取n[i]件。令f[i][v]表示前i种...原创 2019-04-15 20:47:15 · 333 阅读 · 0 评论 -
第四讲:混合背包
问题 如果将01背包、完全背包、多重背包混合起来。也就是说,有的物品只可以取一次(01背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包),求解 01背包与完全背包的混合 考虑到在01背包和完全背包中最后给出的伪代码只有一处不同,故如果只有两类物品:一类物品只能取一次,另一类物品可以取无限次,那么只需在对每个物品应用转移方程时,根据物品的类别选用顺序或逆序的循环...原创 2019-04-15 21:00:05 · 221 阅读 · 0 评论 -
DP: Brackets Sequence
传送门 大意就是给你多个括号,让你匹配出能够满足括号匹配的最短序列,满足所给的是求出来的子序列。 这题先用把每一个位置i-j上的最需要最小分割(在某个位置不匹配,也就是缺括号我们将其分割),记录下来,就是说如果i-j中存在一个分割位置,那么d[i][j] =d[i][k]+d[k+1][j],我们找出最小的分割位置,保存在c[][]数组里,这题的关键就是这个c数组,用dp求完后我们需要递归去输...原创 2019-08-02 21:07:39 · 195 阅读 · 0 评论