链接: https://www.acwing.com/problem/content/281/ 题意: 给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复。 求拆分的方案数 mod 2147483648的结果。 思路: 多重背包, 不过不用枚举到n. 代码: c++ i ...
【参考博客及视频】 1、大雪菜 2、背包九讲——全篇详细理解与代码实现 3、dd大牛的《背包九讲》 4、背包问题 (附单调队列优化多重背包 【题目】 1、Acwing 背包题目 2、01背包问题 Luogu 2925 干草出售Luogu 1616 疯狂的采药HDU 3466 Proud Mercha ...
分类:
其他好文 时间:
2019-09-07 11:10:34
阅读次数:
116
分析 多重背包优化,输出方案 二进制优化 / 单调队列优化 输出方案只需要记录是否转移,用bool类型存 这题好像卡空间 代码 1.二进制优化 1 /************************ 2 User:Mandy.H.Y 3 Language:c++ 4 Problem:luogu 5 ...
分类:
其他好文 时间:
2019-08-30 22:29:28
阅读次数:
72
题意:有权值分别为1,2,3,4,5,6的大理石,每种都有若干块,能否把它们分成权值相等的2份。大理石的总数量不超过20000。(多重背包) 分析:判断dp[ V/2 ] ==V/2 即可,但过程如果用普通做法会超时,即多重背包当成01背包做效率很低,这时候要用二进制拆分优化,将复杂度变为 二进制拆 ...
分类:
其他好文 时间:
2019-08-27 00:42:25
阅读次数:
93
参考: "背包九讲——哔哩哔哩" "背包九讲" [TOC] 01背包问题 "01背包问题" 描述: 有N件物品和一个容量为V的背包。 第i件物品的体积是vi,价值是wi。 求解将哪些物品装入背包,可使这些物品的总体积不超过背包流量,且总价值最大。 二维动态规划 f[i][j] 表示只看前i个物品,总 ...
分类:
编程语言 时间:
2019-08-25 17:55:30
阅读次数:
114
背包九讲系列1——01背包、完全背包、多重背包 https://www.jianshu.com/p/0b9018bbacd7 背包九讲系列2——混合背包、二维费用背包、分组背包 https://www.jianshu.com/p/efa8fbc0fea4 背包九讲系列3——依赖背包、泛化物品、背包变 ...
分类:
其他好文 时间:
2019-08-15 21:22:00
阅读次数:
105
一、线性 1.简单示例 (1)LIS问题 (2)LCS问题 (3)数字三角形 二、背包 1.0/1背包 2.完全背包 3.多重背包(二进制拆分) 4.分组背包 三、区间 四、树形 1.背包类 2.二次扫描与换根法 五、环形与后效性处理 六、状态压缩 七、倍增优化 八、数据结构优化 九、单调队列优化 ...
分类:
其他好文 时间:
2019-08-11 17:00:57
阅读次数:
107
"思路" 这里只是贴一下 JZOJ4224.食物 的代码,挺有意思的水题,虽然一眼就看得出来两个多重背包,但是比较有意思的一个地方是在处理交通工具时为了求出答案,把价格当做体积,把最大装载量当做价值。一切思路还是为了答案服务,这是值得记住的。 c++ include include include ...
分类:
其他好文 时间:
2019-08-11 10:49:35
阅读次数:
83
0-1背包问题 :每个物品只有1件 完全背包问题:每个物品有无数件 多重背包问题:每个物品有不超过多少件的限制 混合背包问题:物品有的是1件,有的无数件,有的不超过多少件 1、0-1背包问题 题目描述: 有N件物品和一个容量是bagV的背包,每件物品只能使用一次。第 i件物品的体积是 v[i],价值 ...
分类:
其他好文 时间:
2019-08-07 22:32:10
阅读次数:
107