背包问题
文章平均质量分 66
柒白_
这个作者很懒,什么都没留下…
展开
-
鸣人的影分身(完全背包求方案数)
1050. 鸣人的影分身母题鸣人的影分身思路:f[i,j]f[i, j]f[i,j] : 前 iii 个数的和为 jjj 的方案数选0的情况: f[i−1,j]f[i - 1, j]f[i−1,j] 前i−1i - 1i−1个数和为 jjj 的方案数不选第i个:f[i−1,j]f[i - 1, j]f[i−1,j] 前i−1i - 1i−1 个数和为jjj的方案数选第i个:f[i][j−i]f[i][j -i]f[i][j−i]前iii个数的和为j−ij - ij−i的方案数 样例原创 2022-04-03 01:16:05 · 250 阅读 · 0 评论 -
P2392 考前临时抱佛脚
P2392 考前临时抱佛脚P2392 考前临时抱佛脚以为是贪心问题结果全wa思路我们需要使耗时尽可能接近 t / 2, 其实就是一个0-1背包问题,体积和价值都是时间,背包的体积为t / 2,可求出在t / 2的时间内最短的耗时时间,那么总耗时即为max(v, t - v); 样例输入:1 2 1 3 54 362 4 3 样例输出:20 代码:#include <iostream>#include <cstring>using namespa原创 2022-03-24 09:27:19 · 193 阅读 · 0 评论 -
波动数列(组合问题求方案数)
波动数列1214. 波动数列思路O(n^2)设第一个数为x,则第二个数为x+d1x+d1x+d1,第三个数为x+d1+d2…x+d1+d2 …x+d1+d2…。这里的d1,d2表示a或者−b,所以这个数列为:x,x+d1,x+d1+d2,x+d1+d2+d3,......,x+d1+d2+...+dn−1x,x + d_{1}, x + d_{1} + d_{2}, x + d_{1} + d_{2} + d_{3},... ...,x + d_{1} + d_{2} + ... + d_{n -原创 2022-03-24 08:39:19 · 1400 阅读 · 0 评论 -
背包问题(单调队列优化)
多重背包问题III传送门Acwing提示 本题考查多重背包的单调队列优化方法。输入样例4 51 2 32 4 13 4 34 5 2输出样例:10一、传统的多种背包问题for(int i = 1; i <= n; i ++) //枚举背包 for(int j = 1; j <= m; j ++) //枚举体积 for(int k = 0; k <= s[i]; k ++)原创 2021-04-17 14:08:05 · 141 阅读 · 0 评论