![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
背包问题
薄层
努力就有收获~
展开
-
QDU-ycb的ACM进阶之路(多重背包做法)
ycb是个天资聪颖的孩子,他的梦想是成为世界上最伟大的ACMer。为此,他想拜附近最有威望的dalao为师。dalao为了判断他的资质,给他出了一个难题。dalao把他带到一个到处都是题的oj里对他说:“孩子,这个oj里有一些不同的题,做每一道题都需要一些时间,每一题也有它自身的rp(人品值)。我会给你一段时间,在这段时间里,你可以做一些题。如果你是一个聪明的孩子,你应该可以让做题的总rp最大。” 如果你是ycb,你能完成这个任务吗? 输入 输入文件的第一行是一个T,表示测试组数,接下来T组每组第一行包原创 2017-06-01 00:00:23 · 598 阅读 · 2 评论 -
多重背包--二进制优化
问题描述: 有N种物品和一个容量为V的背包。第 i 种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 问题分析: 1.初步: 多重背包最朴素的思想就是将所有的物品(不管同不同一类)都看不同的种类,进行01背包的求解。另也可以看做完全背包的变形:第 i 种物品可以取0件、取1件……取n[i]件。原创 2017-05-29 14:25:29 · 4357 阅读 · 1 评论 -
01普通背包和01满背包问题
背包问题: 有 N 件物品和一个容量为 V 的背包。放入第 i 件物品耗费的费用是 c[i],得到的 价值是 w[i]。求解将哪些物品装入背包可使价值总和最大。 最普通的背包问题,对于每个物品,可选择放或者不放。 所以状态便是:只取前i个物品用容量为j的背包所能取得的最大价值。 状态转移方程: dp[i][j] = max(dp[i-1][j], dp[i-1][j-c[i]] +原创 2017-04-04 11:10:17 · 1808 阅读 · 0 评论