上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页
摘要: [NOI2007] 货币兑换 算法 动态规划, 斜率优化, 李超线段树. 思路 注意到题末有两行小字: 必然存在一种最优的买卖方案满足: 每次买进操作使用完所有的人民币, 每次卖出操作卖出所有的金券. 考虑动态规划, 令 \(f_i\) 表示到第 \(i\) 天时最多拥有 \(f_i\) 元钱, 钦 阅读全文
posted @ 2025-01-10 10:10 Steven1013 阅读(25) 评论(0) 推荐(0)
摘要: 题面 & 题解 T2 算法 动态规划, 博弈论. 思路 假设梦梦不能操作, 我们可以用动态规划求出前后缀的最大子段和, 这是 \(\mathcal{O}(n)\)​ 的. 具体来说, 令 \(pre_i\) 表示以 \(i\) 结尾的最大子段和, \(premx_i\) 表示 \([1, i]\) 阅读全文
posted @ 2025-01-09 20:52 Steven1013 阅读(15) 评论(0) 推荐(0)
摘要: 李超线段树 引入 【模板】李超线段树 题目描述 要求在平面直角坐标系下维护两个操作: 在平面上加入一条线段. 记第 \(i\) 条被插入的线段的标号为 \(i\). 给定一个数 \(k\), 询问与直线 \(x = k\) 相交的线段中, 交点纵坐标最大的线段的编号. 强制在线. 我们发现, 传统线 阅读全文
posted @ 2025-01-09 20:12 Steven1013 阅读(19) 评论(0) 推荐(0)
摘要: 斜率优化 例题引入 & 概念 [HNOI2008] 玩具装箱 朴素 DP 令 \(f_i\) 表示枚举到第 \(i\) 个物品, 分成若干段的最小代价. 设 \(\textrm{sum}\) 数组为前缀和数组, 那么就有如下转移方程: \[f_i = \min_{j < i} \left\{ f_j 阅读全文
posted @ 2025-01-08 12:48 Steven1013 阅读(11) 评论(0) 推荐(0)
摘要: 题面 & 题解 T1 做题做少了导致的. 算法 并查集, 组合数学. 思路 首先考虑什么情况下答案一定是 0: 若对于第 \(i\) 列和第 \(n - i - 1\) 列的和 \(> 2\), 那么就一定无解. 在分类讨论下: 第 \(i\) 列和第 \(n - i - 1\) 列的和 \(\le 阅读全文
posted @ 2025-01-07 20:24 Steven1013 阅读(20) 评论(1) 推荐(0)
摘要: 子集反演 对于两个集合的函数 \(f_S, g_S\): \[f(S) = \sum_{T \subseteq S} g(T) \iff g(S) = \sum_{T \subseteq S} (-1)^{\lvert S \rvert - \lvert T \rvert} f(T) \]\(\tt 阅读全文
posted @ 2025-01-06 20:28 Steven1013 阅读(45) 评论(0) 推荐(0)
摘要: 算法 子集反演, 容斥原理, DP. \(\tt{Solution}\) 考虑暴力状压, 令 \(f_{i, \mathbb{S}}\) 表示枚举到第 \(i\) 个箱子时, 至少放了一次玩具构成的集合为 \(\mathbb{S}\) 的方案数. 转移时枚举第 \(i\) 个箱子取不取即可. 想法很 阅读全文
posted @ 2025-01-06 19:38 Steven1013 阅读(32) 评论(0) 推荐(0)
摘要: 题目大意 给定 \(1 \le n \le 2 \times 10^5\) 以及一个序列 \(a\). 现在有 \(1 \le q \le 2 \times 10^5\) 次修改, 每次将 \(a_p \gets x\), 你需要最大化下面的式子: \[f(l, r) = \max^r_{i = l 阅读全文
posted @ 2025-01-06 15:45 Steven1013 阅读(32) 评论(0) 推荐(0)
摘要: 原题链接 效率异常低下. \(\tt{Solution}\) 先考虑一下 easy version. 观察到 \(nq \le 10^5\), 所以对于每一次询问, 我们可以按位来进行贪心. 从 \(2^{59}\) 一直遍历到 \(2^0\), 考虑当前位 \(2^i\) 是否能够出现. 我们可以 阅读全文
posted @ 2025-01-06 11:56 Steven1013 阅读(20) 评论(0) 推荐(0)
摘要: 前置知识 高维前缀和, 状压 DP. 高维前缀和 前缀和可以简单理解为「数列的前 \(n\) 项的和」, 是一种重要的预处理方式, 能大大降低查询的时间复杂度. -- OI Wiki 二维 / 多维前缀和 常见的多维前缀和的求解方式有两种: 基于容斥原理, 时间复杂度 \(\mathcal{O}(2 阅读全文
posted @ 2025-01-05 20:47 Steven1013 阅读(157) 评论(0) 推荐(1)
上一页 1 ··· 6 7 8 9 10 11 12 13 14 下一页