摘要: 虚树 所谓虚树,就是对于一棵指定的树 \(T\),构造一棵新的树 \(T'\) 使得总节点数最小且包含指定的某几个节点和它们的 LCA。OI Wiki 上的几张图就能说明: 虚树能解决什么问题?优化树形 DP。比如给定多组询问,每组询问给出树上的一些关键点,最终的答案只和这些关键点有关。那么此时我们 阅读全文
posted @ 2025-01-27 21:29 D3509 阅读(346) 评论(2) 推荐(1)
摘要: 迄今为止最难的一个专题。 阅读全文
posted @ 2025-01-24 21:55 D3509 阅读(54) 评论(0) 推荐(0)
摘要: 有好玩的错误! 阅读全文
posted @ 2025-01-22 17:03 D3509 阅读(28) 评论(0) 推荐(0)
摘要: 同余最短路 与差分约束类似,都是最短路的一些神奇应用。 同余最短路可以解决类似这样的问题: 给定 \(n\) 个数,求给定值域内,用这些数(可以重复取)能够拼出多少其他数。代表题目:P3403、P2371。 给定 \(n\) 个数,求这 \(n\) 个整数不能拼出的最小/最大整数。代表题目:P266 阅读全文
posted @ 2025-01-21 16:44 D3509 阅读(77) 评论(1) 推荐(1)
摘要: CDQ 分治 主要用于解决偏序问题。在偏序问题中,以三维偏序居多。它是一种离线算法。 其实严格来说,它是一种思想而不是算法。它依赖于归并排序。 CDQ 分治也可以用于 1D/1D 动态规划的转移,不过目前暂不涉及。 偏序问题 什么是偏序?先从一维偏序说起。 一维偏序 给定 \(n\) 个点,每个点有 阅读全文
posted @ 2025-01-20 20:38 D3509 阅读(79) 评论(0) 推荐(0)
摘要: 2025 刷题计划 - 线段树 A. P3313 [SDOI2014] 旅行 树剖板子题,开 \(C\) 棵线段树即可。你可能会说开不下?动态开点不就完了。 B. P3924 康娜的线段树 有意思的一道题,貌似 \(O(n\log n)\) 解法比 \(O(n)\) 更难?我实现不出来。 首先易得期 阅读全文
posted @ 2025-01-20 20:34 D3509 阅读(35) 评论(0) 推荐(1)
摘要: 搜索,折半搜索专题大抄。 阅读全文
posted @ 2025-01-18 10:41 D3509 阅读(41) 评论(0) 推荐(0)
摘要: CSP2025 - 树形 DP T1 「MXOI Round 1」城市 这个 “树上两点距离之和” 很典,让我们想到换根 DP。 首先求出 \(\text{siz}_u\) 和 \(d_u\),分别表示子树 \(u\) 的大小和子树所有点到 \(u\) 的距离之和。 接下来求出整棵树的所有点到 \( 阅读全文
posted @ 2025-01-17 14:33 D3509 阅读(52) 评论(0) 推荐(0)
摘要: [CF58E] Expression 上面的题解说的都不怎么详细。虽然是道搜索题,但是不能胡搜,搜的思路还是值得学习的。 首先需要明确,为了使最终的答案尽可能短,我们应该尽可能少地创造新的数位,所以盲目枚举左右两边加什么数是不可取的,我们应该从低位向高位依次判断。 搜到当前位时,分为两种情况:当前位 阅读全文
posted @ 2025-01-16 21:52 D3509 阅读(33) 评论(0) 推荐(0)
摘要: 点分治、点分树(动态点分治)学习笔记。 阅读全文
posted @ 2025-01-15 19:52 D3509 阅读(61) 评论(0) 推荐(0)