随笔分类 - 题目总结
摘要:[USACO25JAN] DFS Order P 原题链接. 小清新区间 DP. 思路 首先考虑一下如果原图没有边的情况. 那么显然, 图的最终形态会是一棵树. \((\)因为多加边就会增加贡献, 一定不优\()\) 同时对于一个子树, 其子树内的 DFS 序一定是一段连续区间. 所以每个子树的决策
阅读全文
摘要:Gold Transfer 模拟赛待补题. 算法 倍增, 贪心. 思路 仔细阅读题面, 发现「我们保证 \(c_i > c_{p_i}\) 成立」. 这意味着儿子节点的单价一定比父节点的高, 那么就有一个非常显然的贪心策略: 取越靠近根节点的越优. 我们每次寻找路径上最靠近根节点的非空节点是哪个,
阅读全文
摘要:E. A, B, AB and BA 算法 字符串, 构造, 贪心. 思路 Resource. 首先可以发现我们可以从每一个 \(s_i = s_{i + 1}\) 分开以将字符串分成若干部分来分别处理. 具体来说: 对于 ABBABBABA, 我们可以将其分为 AB, BAB, BABA 这三段来
阅读全文
摘要:D. Palindrome Shuffle 题意 给定长度为 \(n\) ( \(n\) 为偶数) 字符串 \(s\), 你可以选择 \(s\) 的一个子串 \(t\) 并且随意交换 \(t\) 中每个字符顺序使得 \(s\) 成为回文串. 求 \(t\) 的最小长度. 算法 双指针, 字符串. 思
阅读全文
摘要:White Magic 题面 思路 动手模拟可以发现, 如果原序列中不含 0, 那么最长的子序列即为本身 (因为 \(\rm{mex}\) 恒为 0, 而 \(a_i\) 均为正整数). 现在来考虑包含 0 的情况. 我们记 \(cnt_0\) 表示序列中 \(a_i = 0\) 的数量, 那么答案
阅读全文
摘要:Little Brackets 题意 给定序列长度 \(2n\), 求「深度」为 \(k\) 的合法括号序列有多少个. 其中「深度」定义为序列前缀中左括号数量与右括号数量之差的最大值. 算法 动态规划. 思路 我们考虑求一个前缀. 令 \(f_{i, j}\) 表示长度为 \(2i\) 的合法括号序
阅读全文
摘要:每日一练做到的, 做不来. Decoding Martian Messages 算法 动态规划, 字符串. 思路 首先可以看出这是一道动态规划的题目. 这道题要求输出最终的字符串而非答案, 我们可以考虑先计算出答案数组再反推出最终的字符串. 先来考虑动态规划. 我们令 \(f_{i, j}\) 表示
阅读全文
摘要:原题链接 闲话 本来是模拟赛题目, 但是过于古老, 于是就单独拿出来写了. 算法 博弈论, 套路题? 思路 考虑从答案入手, \(\displaystyle \textrm{val}(S_1) - \textrm{val}(S_2) = \sum_{i < j \in S_1} \textrm{di
阅读全文
摘要:原题链接 题意 给定 \(n, k\), 求有多少个数组 \(a\), 使得 \(\displaystyle 1 \le |a| \le n, 1 \le a_i \le k, \prod_{i = 1}^{|a|} = x\), 其中 \(x \in [1, k]\). 算法 动态规划, 组合数
阅读全文
摘要:[NOI2007] 货币兑换 算法 动态规划, 斜率优化, 李超线段树. 思路 注意到题末有两行小字: 必然存在一种最优的买卖方案满足: 每次买进操作使用完所有的人民币, 每次卖出操作卖出所有的金券. 考虑动态规划, 令 \(f_i\) 表示到第 \(i\) 天时最多拥有 \(f_i\) 元钱, 钦
阅读全文
摘要:算法 子集反演, 容斥原理, DP. \(\tt{Solution}\) 考虑暴力状压, 令 \(f_{i, \mathbb{S}}\) 表示枚举到第 \(i\) 个箱子时, 至少放了一次玩具构成的集合为 \(\mathbb{S}\) 的方案数. 转移时枚举第 \(i\) 个箱子取不取即可. 想法很
阅读全文

浙公网安备 33010602011771号