摘要: 树形 DP 中的换根 DP 问题又被称为二次扫描,通常需要求以每个点为根时某个式子的答案。 这一类问题通常需要遍历两次树,第一次遍历先求出以某个点(如 \(1\))为根时的答案,在第二次遍历时考虑由根为 \(u\) 转化为根为 \(v\) 时答案的变化(换根)。这个变化往往分为两部分,\(v\) 子 阅读全文
posted @ 2024-11-09 08:39 RonChen 阅读(369) 评论(0) 推荐(0)
摘要: 树上的背包问题,也就是背包问题与树形 DP 的结合。 树上背包往往是设 \(dp_{u,i}\) 表示以 \(u\) 为根的子树放了体积 \(i\)(又或者是选 \(i\) 个节点)时的最优解。 进行状态转移时,依次进入每一个子节点 \(v\),处理完 \(v\) 的子树后将目前的 \(dp_{u, 阅读全文
posted @ 2024-11-08 16:17 RonChen 阅读(324) 评论(0) 推荐(0)
摘要: 例题:AT_dp_a Frog 1 一个很简单的朴素 DP。令 \(dp_i\) 表示在 \(h_i\) 时的最小代价,那么状态可以从 \(dp_{i-1}\) 和 \(dp_{i-2}\) 转移过来。 状态转移方程:\(dp_i = \min (dp_{i-1} + |h_i - h_{i-1}| 阅读全文
posted @ 2024-10-23 21:51 RonChen 阅读(130) 评论(0) 推荐(0)
摘要: A 火柴 #include <cstdio> int cnt[10] = {0, 1, 2, 3, 3, 2, 3, 4, 5, 3}; char num[10][10] = {"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"}; 阅读全文
posted @ 2024-10-22 18:05 RonChen 阅读(189) 评论(0) 推荐(0)
摘要: RMQ 问题 Sparse Table 可用于解决这样的问题:给出一个 \(n\) 个元素的数组 \(a_1, a_2, \cdots, a_n\),支持查询操作计算区间 \([l,r]\) 的最小值(或最大值)。这种问题被称为区间最值查询问题(Range Minimum/Maximum Query 阅读全文
posted @ 2024-10-18 20:08 RonChen 阅读(145) 评论(0) 推荐(0)
摘要: 单调栈是一种内部元素具有单调性的栈,可以解决与“以某个值为最值的最大区间”等问题。 对于一个数组 \(a\),找到每个元素前边/后边第一个比它大/小的元素。假如数组中某个元素后边第一个比它大的是 \(a_r\),前边第一个比它大的是 \(a_l\),则 \([l+1, r-1]\) 这个区间内的最大 阅读全文
posted @ 2024-10-05 08:52 RonChen 阅读(170) 评论(0) 推荐(0)
摘要: 一个整数可以被表示成若干质数的乘积。例如:\(48=2^4 \times 3, \ 49 = 7^2, \ 50 = 2 \times 5^2\)。 算术基本定理:设 \(a>1\),那么必有 \(a = p_1^{\alpha_1} p_2^{\alpha_2} \cdots p_s^{\alph 阅读全文
posted @ 2024-09-30 14:38 RonChen 阅读(165) 评论(0) 推荐(0)
摘要: 设 \(a_1,a_2\) 是两个整数,如果 \(d|a_1, \ d|a_2\),那么 \(d\) 就称为 \(a_1\) 和 \(a_2\) 的公约数,其中最大的称为 \(a_1\) 和 \(a_2\) 的最大公约数,记作 \((a_1,a_2)\)。一般地,可以类似地定义 \(k\) 个整数 阅读全文
posted @ 2024-09-30 14:36 RonChen 阅读(331) 评论(0) 推荐(0)
摘要: Linux 系统终端中常用的文件与目录操作命令 在计算机早期历史中,终端专指用户与计算机系统进行交互的物理设备,包括命令行终端和图形化终端等。在流行的 UNIX、Linux 发行版中,可以使用快捷键调出命令行终端模式,也可以在图形界面中使用终端仿真器(terminal emulator)来模拟命令行 阅读全文
posted @ 2024-09-20 19:31 RonChen 阅读(210) 评论(0) 推荐(0)
摘要: 整除的基本知识 有 \(12\) 个苹果,恰好平分给 \(x\) 个人(每个人分到的苹果完整且数量相同),\(x\) 能取到哪些值? 分别以 \(1\) 到 \(12\) 假设 \(x\),发现只有 \(x=1,2,3,4,6,12\) 这 \(6\) 个数字满足,这里用到的就是整除的概念。整数之间 阅读全文
posted @ 2024-09-19 20:28 RonChen 阅读(268) 评论(0) 推荐(0)