
背包
文章平均质量分 52
小匈许
这个作者很懒,什么都没留下…
展开
-
【完全背包】及其优化
完全背包 状态表示 dp[i][j]:前 i 个物品,背包容量 j 下的最优解(最大价值) 完全背包和基本的d0 - 1背包不同的是,每一件物品可以无限拿,那么最基本的做法就是在0-1背包算法的基础上加一层物品数量的循环,但是这种做法会 TLE ,非常d疼。 题目 输入 4 5 1 2 2 4 3 4 4 5 输出 10 朴素代码(TLE) #include <iostream> #include <algorithm> using namespace std; const i原创 2021-12-02 20:09:18 · 362 阅读 · 0 评论 -
基本0 - 1背包问题
基本0 - 1 背包 状态表示 dp[i][j]:前i个物品,背包容量j下的最优解(最大价值) 对于基本01背包,我们主要的问题就是拿或 不拿 如果不能拿,那么就将上一状态转移到当前状态 dp[i][j] = dp[i - 1][j] 如果可以拿,我们就要比较拿或者是不拿哪一种价值最高 不拿当前物品 dp[i][j] = dp[i - 1][j] 拿当前物品 dp[i][j] = dp[i - 1][j - w[i]] + v[i] 不拿当前物品,那么当前状态是上一状态的转移 拿当前物品,我们只要确定原创 2021-12-02 15:52:07 · 369 阅读 · 0 评论