Loading

摘要: P2542 [AHOI2005] 航线规划 trick+树剖 首先删边操作困难,考虑倒序处理。 发现题目中的关键性质:无论航线如何被破坏,任意时刻任意两个星球都能够相互到达。在整个数据中,任意两个星球之间最多只可能存在一条直接的航线。 这说明无论何时图都是连通的,那么我们完全可以建一棵树,再考虑加边 阅读全文
posted @ 2024-04-06 21:40 Fire_Raku 阅读(2) 评论(0) 推荐(0) 编辑
摘要: CF613D Kingdom and its Cities 虚树优化 dp 考虑无解的情况,若有两个重要城市相邻,那么无解。 对于有解的情况,朴素的如何求解最少占领的城市数?考虑从叶子节点开始向上贪心,假如当前 \(u\) 节点为关键点,那么对于它的子树 \(v\),若它的关键点能到 \(v\),就 阅读全文
posted @ 2024-04-06 20:27 Fire_Raku 阅读(3) 评论(0) 推荐(0) 编辑
摘要: P2495 [SDOI2011] 消耗战 2024.11.14 虚树优化 dp 模板题 想出树形 dp 简单。 优化需要注意到无用的转移很多,因为 \(\sum k\) 小,所以如果能将单次 dp 减小到 \(O(k)\) 就可以做了。 想到虚树很好保留了树的必要形态,在这上面 dp 就可以了。 考 阅读全文
posted @ 2024-04-06 16:31 Fire_Raku 阅读(2) 评论(0) 推荐(0) 编辑
摘要: P10238 [yLCPC2024] F. PANDORA PARADOXXX 并查集维护连通性+结论+数据结构维护距离 题目的操作是删边通常复杂,并且不强制在线,所以离线倒过来加边。 题目要求的就是当前所有连通块的直径的最大值,考虑加边后两个连通块合并后直径的变化。有结论:合并后的连通块的直径两端 阅读全文
posted @ 2024-04-05 23:11 Fire_Raku 阅读(13) 评论(0) 推荐(0) 编辑
摘要: P8201 [传智杯 #4 决赛] [yLOI2021] 生活在树上(hard version) 结论+离线询问 或 结论+主席树 结论通过画图不难得出,树上任意一个点到 \(u\) 和 \(v\) 的路径的并一定包含 \(u\) 到 \(v\) 的路径,并且任意一个点到 \(u\) 和 \(v\) 阅读全文
posted @ 2024-04-05 14:35 Fire_Raku 阅读(17) 评论(0) 推荐(0) 编辑
摘要: P8025 【树链剖分求祖先】 这题的题意简单,简单分类讨论一下这里就不赘述了。最后题目就简化成求一个点的 \(k\) 级祖先。 开始会的解法是倍增,但是常数过高被卡了。 常数更优秀的做法是树剖,每一次跳树链,最后可能有一条链太长只能跳一部分,这是因为树链剖分的 \(dfn\) 序是有序的,即每条链 阅读全文
posted @ 2024-04-04 23:23 Fire_Raku 阅读(14) 评论(0) 推荐(0) 编辑
摘要: P4577 [FJOI2018] 领导集团问题 2024.11.14 整体 dp 容易想到用 dp 求解问题。\(w_i\) 只关心大小关系,先离散化了。 一个节点的选择只关心子树中选的最小的点。但其实我们并不需要最小的点具体到底是多少,所以只需要用一个状态框住值域就好了。 于是自然就设 \(f_{ 阅读全文
posted @ 2024-04-04 11:50 Fire_Raku 阅读(17) 评论(0) 推荐(0) 编辑
摘要: ​P3521 [POI2011] ROT-Tree Rotations 线段树合并 首先左右子树交换只会改变「跨过左右子树的逆序对」数量,对其他逆序对不会有任何影响,所以我们选择对每个结点的左右子树求解,判断是否交换。 考虑对于每个节点建一个权值线段树,那么贡献就可以在 merge 操作中求解,原因 阅读全文
posted @ 2024-04-02 21:57 Fire_Raku 阅读(11) 评论(0) 推荐(0) 编辑
摘要: CF490F Treeland Tour 线段树合并 考虑维护 \(lis_{u,i}/lds_{u,i}\) 当前子树 \(u\) 中以 \(i\) 结尾的上升子序列/下降子序列。考虑转移,实质上就是合并每个儿子的信息,用线段树合并即可。 考虑如何统计答案,当枚举到儿子 \(v\) 时,维护答案分 阅读全文
posted @ 2024-04-02 21:47 Fire_Raku 阅读(14) 评论(0) 推荐(0) 编辑
摘要: P7219 [JOISC2020] 星座 3 2024.11.14 笛卡尔树+整体 dp(线段树合并维护 dp) 能够发现要满足题目条件,只需要考虑到所有极大矩形就可以了。 极大矩形是哪些?因为顶部确定,如果知道底的位置,向左右两端尽可能延伸得到的矩形就是一个极大矩形。 那么一个极大矩形就只会被这段 阅读全文
posted @ 2024-04-02 20:08 Fire_Raku 阅读(59) 评论(0) 推荐(0) 编辑