Forever Young

随笔分类 -  动态规划——背包DP

摘要:概要 概念的穿插引入 降低算法复杂度的方法:利用问题的可划分性以及子问题之间的相似性进行归纳。 动态规划算法把原问题视作若干个重叠子问题的逐层递进,每个子问题的求解过程都构成一个**“阶段”**。 为了保证这些计算都能够按顺序且不重复执行,动态规划要求已经求解的子问题不受后续阶段的影响,这个条件被称 阅读全文
posted @ 2020-11-10 22:17 Loceaner 阅读(177) 评论(0) 推荐(0)
摘要:思路 暴力 每次当前层由上一层可以得到的数转化过来,用滚动数组实现 实际上就是一个背包 正解 暴力的瓶颈就在于在由上一层转化到当前层时需要暴力转化 考虑用一个 \(\text{bitset}\),每次加一个数 \(x\) 就相当于直接左移 \(x\) 位,最后输出 \(\text{bitset}\) 阅读全文
posted @ 2020-09-02 21:04 Loceaner 阅读(177) 评论(0) 推荐(0)
摘要:弱鸡打比赛 不可能AK 阅读全文
posted @ 2020-07-10 18:09 Loceaner 阅读(222) 评论(2) 推荐(0)
摘要:动态规划学习笔记 待更新 ←--这辈子是不会更新了 背包动态规划 01背包 有$N$件物品和一个容量为$V$的背包。第$i$件物品的费用是$c[i]$,价值是$w[i]$。求解将哪些物品装入背包可使价值总和最大。 $f[i][j]$表示前$i$件物品恰放入一个容量为$j$的背包可以获得的最大价值,转 阅读全文
posted @ 2019-08-11 21:48 Loceaner 阅读(146) 评论(0) 推荐(0)
摘要:#洛谷 P1910 L国的战斗之间谍 ##思路 二维背包模板题 三维肯定会爆掉,所以换二维 ##代码 #include <bits/stdc++.h> #define N 1111 using namespace std; int n,m,x; int a,b,c; int f[N][N]; inl 阅读全文
posted @ 2019-05-23 10:30 Loceaner 阅读(103) 评论(0) 推荐(0)
摘要:洛谷 P1164 小A点菜 ##题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种。 uim指着墙上的价目表(太低级了没有菜单),说:“随便点”。 ##题目描述 不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩$M$元$(M \le 10000)$ 阅读全文
posted @ 2019-05-05 16:52 Loceaner 阅读(163) 评论(0) 推荐(0)