11 2023 档案
摘要:前言 上个坑还没填(悲 区间 dp 区间 dp 是指这样一类动态规划:算法在一个线性序列上进行,且可以通过小区间转移到大区间。 正因如此,一般的区间 dp 数组至少是两维: dp[N][N] ,其中前面一位表示区间左端点,后面一维为区间右端点。 因为要枚举区间,它的时间复杂度至少是 $O(n^2)$
阅读全文
摘要:F. Frances Yao 女士的原论文 参考博客 前言 感谢果果让我知道了在没完全看懂一个东西之前不能乱过题。 戒掉狂妄,戒掉浮躁。清楚目标,不要被冲昏头脑。 今天可能写不完,能写多少写多少。 四边形不等式优化的实现 之所以把实现放到前面来,是因为实现是比证明简单得多的。 应用场景 对于某些区间
阅读全文
摘要:大纲 背包 dp 入门 背包的优化技巧 奇奇怪怪的背包 基于随机化的背包 基于根号分治的背包 其他奇特技巧
阅读全文
摘要:设 $dp_{i, j}$ 表示当前选了 $i$ 个物品(注意不是前 $i$ 个),总和为 $j$ 的方案数。 一种巧妙的思路:将这个状态分为含有可选的最小物品 $v_{min}$ 与不含最小物品两种情况。 当含有可选的最小物品,我们至少选一个,也就是 $dp_{i - 1, j - v_{min}
阅读全文
摘要:向量的定义 只有大小而没有方向的量称作 标量 。 既有大小又有方向的量称作 向量(Vector) 。 别和 std::vector<> 搞混了,此 vector 非彼 vector。 向量的表示 二维向量可在平面直角坐标系上表示,此时它的长度称为 模长 。 由于向量没有位置,我们可以直接将它的起点平
阅读全文