摘要: 题单: Tarjan大礼包 “超级点”就是极大联通子图。缩完之后变权值,DAG 上 DP。 SCC 的编号的倒叙就是拓扑序(注意不唯一)。 因为是按点的遍历顺序缩的。 所以有时可以直接倒叙 DP,不需要队列模拟。 然后 tarjan 的原理就是: \(low_x\) \(x\) 能到达的最小时间戳。 阅读全文
posted @ 2026-08-21 17:19 GUO120822 阅读(3) 评论(0) 推荐(0)
摘要: 欧拉路定义:每条边恰好走一遍的路径,回到原点的是欧拉回路(欧拉环),否则为欧拉路。 性质: 无向:度数全都为 \(0\)(欧拉环)或有两个度数为奇数(一个起点一个终点) 有向:入度全部等于初度(欧拉环),或有一个出度 - 入度 = \(1\),且有一个入度 - 初度 = \(1\) 的(起点、终点) 阅读全文
posted @ 2026-08-21 16:52 GUO120822 阅读(1) 评论(0) 推荐(0)
摘要: 以下所有内容都是 FHQ-Treap。 P3369 【模板】普通平衡树 #include<bits/stdc++.h> using namespace std; mt19937 rd(114514);//种子可以随机rd(time(NULL)) 也可以 const int N=1e5+10; int 阅读全文
posted @ 2026-08-21 16:51 GUO120822 阅读(2) 评论(0) 推荐(0)
摘要: 单调队列优化 DP 是一种常用的优化 DP 方式。可以通过它将时间复杂度降下来,从而保证不超时。 只要掌握了单调队列,难点就在于如何把 DP 转化成单调队列可维护的方式用单调队列维护。其它都和普通 DP 一样。 所以在思考题目的时候,只用管朴素 DP 怎么写,怎么转化成单调队列模板的形式即可。 P1 阅读全文
posted @ 2026-08-21 16:48 GUO120822 阅读(1) 评论(0) 推荐(0)
摘要: 定义 反悔贪心是当问题的决策很少时(修改的花费比较少时),而大的子问题不一定是由子问题的最优解得到,可以建立某种反悔的机制,从而在之后修正以前的错误决策的一种贪心。 我的理解是:反悔贪心相当于一维 DP,它用 \(dp_i\) 表示前 \(i\) 个数的最优决策。只是这个东西根据题目的一些性质无法保 阅读全文
posted @ 2026-08-21 16:47 GUO120822 阅读(1) 评论(0) 推荐(0)
摘要: 可持久化线段树是能维护历史版本的线段树。 可以通过历史版本维护历史版本、区间等信息。 它本质上是线段树的前缀和操作。 可持久化值域线段树也简称主席树。 P3919 【模板】可持久化线段树 1(可持久化数组) 题目大意:单点修改。查询历史版本上的某个值。 首先暴力的想法是可以每一次都修改,然后新建一棵 阅读全文
posted @ 2026-08-21 16:47 GUO120822 阅读(1) 评论(0) 推荐(0)
摘要: 是单调队列优化 DP 里较难的一种。 HDU3507 如果没有 \(M\),那么每一个单独放一堆更好。 但是有 \(M\),问题变得复杂,考虑 DP。 根据题意,很容易想到一个一维的状态。 \(f_i\) 表示前 \(i\) 个单词全部写完的最小花费。 \(f_i=\min(f_i,f_j+(sum 阅读全文
posted @ 2026-08-21 16:47 GUO120822 阅读(1) 评论(0) 推荐(0)
摘要: 树链剖分是把树上问题转化为区间问题的工具,额外耗时 \(O(log{n})\)。 树链剖分不一定要套线段树。 P2486 [SDOI2011] 染色 直接区间染色,区间查询颜色段。难点在于线段树部分和链的拼接。 首先来看线段树。发现是好合并的,把两边颜色数相加,如果左边的右端点等于右边的左端点,那么 阅读全文
posted @ 2026-08-21 16:46 GUO120822 阅读(2) 评论(0) 推荐(0)
摘要: P4147 玉蟾宫 先预处理出 \((i,j)\) 点最多可以往上延伸的数量。记为 \(up_{i,j}\)。 枚举每一行,然后对于这一行,这个矩阵的高度肯定是这一行的某个点的 \(up\) 值。 所以对于每个点单调栈跑出前面第一个碰到的比它小的点和后面第一个碰到的比它小的点。也就是从左往右扫一次, 阅读全文
posted @ 2026-08-21 16:46 GUO120822 阅读(2) 评论(0) 推荐(0)
摘要: 现在要解决下列问题: 给定字符串 \(s\),求 \(s\) 的最长回文子串的长度。 首先,暴力是 \(\mathcal O(n^3)\) 的。 然后暴力加上哈希是 \(\mathcal O(n^2)\) 的。 然后奇偶性分类并二分哈希是 \(\mathcal O(nlogn)\) 的。 那有没有线 阅读全文
posted @ 2026-08-21 16:45 GUO120822 阅读(2) 评论(0) 推荐(0)