ACM - 背包DP
Scar_Halo
ITer
展开
-
多重背包 单调队列优化
参考 洛谷P1776 宝物筛选_NOI导刊2010提高(02)(多重背包,单调队列) dp[i][j]dp[i][j]dp[i][j] 为前 iii 个物品,重量不超过 jjj 的最大价值,www 为重量,vvv 为价值,mmm 为数量,WWW 为背包大小 dp[i][j]=max{dp[i−1][j−kwi]+kvi}0<=k<=min(mi,jwi)dp[i][j] = max\{...原创 2020-04-12 19:43:03 · 266 阅读 · 0 评论 -
洛谷 P2515 软件安装 —— tarjan + 树形背包
题目链接:点我啊╭(╯^╰)╮ 题目大意: 每个点有重量、价值、依赖点 树形背包模型,求体积为 MMM 的背包的最大值 解题思路: 注意根据依赖点建图后不是树和森林 因为会形成环,环上的点要么都选,要么都不选...原创 2020-03-28 01:23:52 · 217 阅读 · 0 评论 -
树形背包
树形背包:必须选择父亲节点才能选择其子节点,求一定体积下的最大点权和 模板题:P2014 [CTSC1997]选课 O(nw2)O(nw^2)O(nw2) 算法: dp[i][j]dp[i][j]dp[i][j] 表示以 iii 为根的子树,体积为 jjj 的最大值 在 dfsdfsdfs 里枚举所有子树的状态即可 注意:若每个点的体积都为 111 ,选择枚举所有子树的大小,复杂度为 O(nw)O...原创 2020-03-27 23:53:17 · 205 阅读 · 0 评论 -
超大背包
一:超大体积 题意:n≤500n≤500n≤500 个物品,所有物品的价值总和 v≤5000v≤5000v≤5000,体积 w≤1010w≤10^{10}w≤1010,容量为 S≤109S≤10^{9}S≤109 方法:dp[i]dp[i]dp[i] 表示价值为 iii 时的最小重量 转移方程:dp[i]=min(dp[i],dp[i−v[j]]+w[j])dp[i] = min(dp[i],dp...原创 2019-09-25 22:55:24 · 242 阅读 · 0 评论 -
bzoj-2287___POJ Challenge —— 删除背包
先贴代码 明天再来写为啥 #include&amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt; using namespace std; typedef long long ll; const int maxn=105; int n, m; int w[maxn], v[maxn]; int dp[maxn][maxn], all[maxn]; int main() { scanf(&amp;amp;quot;%d%原创 2018-09-26 23:30:11 · 389 阅读 · 0 评论 -
bzoj-2748___音量调节 —— dp+01背包
#include&amp;amp;lt;bits/stdc++.h&amp;amp;gt; using namespace std; typedef long long ll; int n, m, st; int w[55]; int dp[55][1005]; int main() { scanf(&amp;quot;%d%d%d&amp;quot;, &amp;amp;amp;n, &amp;amp;a原创 2018-09-29 23:26:24 · 280 阅读 · 0 评论 -
CodeForces - 987C___Three displays —— 背包 + DP
题目链接:点我 题目大意: &nbsp;&nbsp;&nbsp;&nbsp;nnn个物品,每个物品体积为sis_isi,花费为cic_ici,每次选333个物品,使这三个物品i&amp;lt;j&amp;lt;ki&amp;lt;j&amp;lt;ki&lt;j&lt;k,并且si&amp;lt;sj&amp;lt原创 2018-10-15 18:35:43 · 341 阅读 · 0 评论 -
POJ-3093___Margaritas on the River Walk —— 01背包的变异
题目链接:传送门 题目大意: &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;多组样例,在这里我们假设有nnn个物品,容量为mmm的背包,问有多少种方案,使得剩下的所有物品都装不进背包。。。。。。 解题思路: &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp原创 2018-09-28 20:09:36 · 300 阅读 · 1 评论 -
ACM-ICPC 2018 焦作赛区网络预赛___K —— 多重背包优化
Problem List 难度分布:签到 × 1, 前期 × 2, 中期 × 4, 中后 × 1, 后期 × 2, 防穿 × 2. id tag 预计/实际通过 01 oval 签到题 / 期望 微积分 ≈ 900 / 872 12 pinball 前期题 / 模拟 几何 ≈ 500 / 681 09 werewolf 前...原创 2018-08-08 18:09:04 · 439 阅读 · 1 评论 -
BZOJ-2794___Cloakroomr —— 离线 + 背包
bzoj上这题已经没了,不知道poi上还有没有。。。。。。 Description 有nnn件物品,每件物品有三个属性a[i]a[i]a[i], b[i]b[i]b[i], c[i]c[i]c[i] (a[i]a[i]a[i]&amp;amp;amp;amp;lt;&amp;amp;amp;amp;lt;&amp;amp;amp;lt;b[i]b[i]b[i])。 再给出q个询问,每个询问由非负整数mmm, kkk, sss组成,问是否能够选出某些物品使得:原创 2018-09-30 21:47:29 · 200 阅读 · 0 评论 -
01背包、完全背包、多重背包+优化 模板
吃水不忘挖井人、这篇博客讲的很详细也很好,顶一下:传送门 01背包(ZeroOnePack):有N件物品和一个容量为V的背包。(每种物品均只有一件)第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。 完全背包(CompletePack):有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可...原创 2018-09-18 23:20:27 · 305 阅读 · 0 评论 -
HDU-2602___Bone Collector —— 01背包
原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=2602 Bone Collector Problem Description Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect...原创 2018-03-05 22:13:17 · 304 阅读 · 0 评论