摘要:
闭合图 我们给出闭合图的定义:对于有向图中的点,其相邻的节点全部属于这个有向图,那么这个图就被称为闭合图。 也就是说这个图的终点一定是出度为0的。 最大权闭合子图 就是对于一个有向图,每个点有一个权值,权值属于实数,现在考虑选择一个闭合子图使得这个子图中的点的权值和最大。 我们尚且思考一下,不难发现 阅读全文
posted @ 2022-02-24 11:25
cbdsopa
阅读(64)
评论(0)
推荐(0)
摘要:
平面图 就是放在平面上展开,存在一种画法能够使得图的边与边之间没有交点,这玩意就叫平面图。 一般来说网格图喜欢考这个,提到网格图可以留个心眼。 但是一般来说吧,这个东西要配和着对偶图来使用。 对偶图 就是对于原平面图的每一条边,将与其接壤的两个面在对偶图中连一条边。特殊地,当且仅当对于一条边两边的面 阅读全文
posted @ 2022-02-24 11:22
cbdsopa
阅读(406)
评论(0)
推荐(0)
摘要:
冬令营突然发现的一个比较厉害的东西。 Dancing Links 用于解决覆盖性问题的利器。 两个不同分支,一个精准覆盖问题,一个可重复覆盖问题。 先讲相对基础的精准覆盖问题。 精确覆盖问题 就是说全集由多个集合恰好覆盖,各个集合间无交。 这个问题我们先考虑一个具体一些的问题。 我们用下面的那个 模 阅读全文
posted @ 2022-02-24 11:20
cbdsopa
阅读(53)
评论(0)
推荐(0)
摘要:
本质上大概是搜索优化。我们将bfs使用的队列改为优先队列,并使用结构体存储节点,重载 '<' 小于号。 然后我们提高搜索效率的方法就是通过一个估价函数,评估当前情况与答案情况的差异,然后选取差异最小(或根据题目,并基于个人经验选取能够更快找到答案的情况) 由于优先队列存在复杂度,有时候估价函数写得不 阅读全文
posted @ 2022-02-24 11:18
cbdsopa
阅读(495)
评论(0)
推荐(0)
摘要:
注:\(A*\) 求解K短路效率极其低下,时间复杂度$O(nklog\ n)$,空间视题目而定,因为本质是爆搜,可求解数据范围较小的题目。 我们使用$A*$求解k短路: 首先需要预处理出估价函数。对于原图建立反向图,然后跑终点的单源最短路。用终点到这个点的距离作为$A*$的估价函数,可以完全保证搜索 阅读全文
posted @ 2022-02-24 11:17
cbdsopa
阅读(129)
评论(0)
推荐(0)
摘要:
考模拟赛考到了线段树合并,于是学了树上启发式合并(?) 它相较于线段树合并的优点在于: 空间开销小 无线段树的常数 写法简单易理解 好那么开始进入正题。 首先说一下它的用途,可以用来解决一些子树问题。 具体的做法是先 dfs 预处理,然后像树剖那样剖出重儿子,可以剖出 dfs 序为之后加上一点常数优 阅读全文
posted @ 2022-02-24 11:15
cbdsopa
阅读(60)
评论(0)
推荐(0)
摘要:
#include<bits/stdc++.h> using namespace std; #define re register #define MAXN 5010 struct side { int u,v,w; }s[200010]; int fa[MAXN],n,m,ans,cnt,cnt1; 阅读全文
posted @ 2022-02-24 11:14
cbdsopa
阅读(28)
评论(0)
推荐(0)
摘要:
在某些情况下可以和树剖替换。(当然某些情况替代不了,我愿称之为小树剖) 前置知识 倍增求LCA 了解差分思想 (既然要替代树剖怎么可能会用树剖求LCA呢/xyx) 引入 首先我们都知道差分是可以用来通过单点修改维护区间信息的(如单修区查的树状数组),因为我们在前面加上,再在后面减掉,中间这一段是得到 阅读全文
posted @ 2022-02-24 11:13
cbdsopa
阅读(43)
评论(0)
推荐(0)
摘要:
相当于把树上的链抽出来变成区间进行操作。 重链剖分(本文重点): 本文依照P3384 【模板】轻重链剖分/树链剖分的实现进行讲解。 就是剖分出重链覆盖全树。 重链:除开头的端点为轻儿子外,其他节点全为重儿子的链。 重儿子:一个节点的儿子中子树大小最大的儿子。 要进行树链剖分,先要进行预处理。需要处理 阅读全文
posted @ 2022-02-24 11:12
cbdsopa
阅读(46)
评论(0)
推荐(0)
摘要:
用于解决树上路径长问题的算法,复杂度是比较优秀的 \(O(nlogn)\) 直接按照题目来讲。点分治1 我们要维护树上路径长度为 \(k\) 的路径是否存在(当然视题目而定,点分治的操作比较灵活)。这类问题我们选用点分治。 具体怎么操作呢? 一般就是,每次用vis标记删除根节点,然后对于所有没被删除 阅读全文
posted @ 2022-02-24 11:11
cbdsopa
阅读(39)
评论(0)
推荐(0)

浙公网安备 33010602011771号