随笔分类 -  图论

摘要:粉兔的博客 1 圆方树的定义与性质 圆方树最初是在仙人掌中使用的,后来逐渐被应用到一般图中,用来处理点双联通分量等问题。 一个点双连通图满足的性质有: 图中任意两个点都存在至少两条不重复的路径(处理起点和终点),或者说任意去掉其中一个点不能时整张图变成两个不连通的子图,即不存在割点。 在一个点双联通 阅读全文
posted @ 2022-11-16 21:56 EricQian06 阅读(115) 评论(0) 推荐(1)
摘要:久远的博客了,从洛谷搬过来 阅读全文
posted @ 2022-11-07 19:03 EricQian06 阅读(45) 评论(0) 推荐(1)
摘要:[ARC098F] Donation 给出一个 $N$ 个点 $M$ 条边的无向连通图,每个点的标号为 $1$ 到 $n$, 且有两个权值 $A_i,B_i$。第 $i$ 条边连接了点 $u_i$ 和 $v_i$。 最开始时你拥有一定数量的钱,并且可以选择这张图上的任意一个点作为起始点,之后你从这个 阅读全文
posted @ 2022-11-04 20:33 EricQian06 阅读(28) 评论(0) 推荐(1)
摘要:定义与建立 Prufer 序列可以将一个带标号 $n$ 个结点的树用 $[1,n]$ 中的 $n-2$ 个整数表示。一个无向带标号生成树与数列之间的双射。 对于一棵树,每次我们选择它编号最小的叶子结点,删除它并记录下与它相连的节点的编号,那么最终记录下的 $n-2$ 个数就组成了这棵树的 Prufe 阅读全文
posted @ 2022-03-12 09:09 EricQian06 阅读(68) 评论(0) 推荐(0)
摘要:前置知识:矩阵、高斯消元 行列式 行列式 定义 $$ \text{det(A)}=\sum_{p}{(-1)^{\mathrm{sgn}(p)}\prod{A_{i,p_i}}} $$ 其中 $\text{sgn}(p)$ 表示排列 $p$ 的逆序对个数。 行列式 性质 进行一次矩阵转职,行列式不变 阅读全文
posted @ 2022-02-20 13:10 EricQian06 阅读(262) 评论(0) 推荐(2)
摘要:(几万年前的博客了,刚从洛谷搬过来) 主要内容 差分约束系统 是一种特殊的 \(n\) 元一次不等式组 。 差分约束系统中的每个约束条件 \(x_i-x_j\le c_k\) 都可以变形成 \(x_i\le x_j+c_k\) 与 \(x_j\ge x_i-c_k\) ,这与单源最短路中的三角形不等 阅读全文
posted @ 2022-02-11 13:48 EricQian06 阅读(358) 评论(2) 推荐(2)
摘要:dsu on tree学习笔记 (\(\uparrow\) 学习参考) 一般来说,Dsu on tree 大多可以和 点分治 互相换着用,都是处理子树或以 \(x\) 为根的路径等问题。 这种问题假设好状态基本上可以秒了。 (当然有时候还可以和 长链剖分 互换) 算法结构与模板 首先类似重链剖分的预 阅读全文
posted @ 2022-01-31 08:52 EricQian06 阅读(72) 评论(0) 推荐(1)
摘要:强联通分量 强连通:有向图 $G$ 强连通表示,$G$ 中任意两个结点连通。 强连通分量( Strongly Connected Components ,简称 $\operatorname{SCC}$ ):极大的 强连通子图。 Tarjan 维护了以下两个变量: $\texttt{dfn}$:深度优 阅读全文
posted @ 2021-10-06 20:23 EricQian06 阅读(105) 评论(0) 推荐(0)
摘要:大致内容 oi-wiki上对虚树的介绍 如果一棵树有若干个询问,每次询问 $k$ 个点,$k$ 很小但 $n$ 比较大时,真正需要处理的点很少。 在这种情况下,虚树就派上用场了。我们可以只处理那些关键点,而忽略其他点,方便处理 $\sum k$ 与 $n$ 同阶的情况。 那么哪些点才是需要的呢?发现 阅读全文
posted @ 2021-10-01 14:53 EricQian06 阅读(82) 评论(0) 推荐(0)
摘要:无向图三元环计数 从度数小的点向度数大的点连边,若度数相同则将编号小的向编号大的连边。 可以证明复杂度是 \(O(m\sqrt{m})\) 。 有向图三元环计数 将所有边看成无相,按照有向图的方式找出所有三元环,再进行检查是否在原图上也构成三元环。 竞赛图三元环计数 \(\dbinom{n}{3}- 阅读全文
posted @ 2021-09-28 13:49 EricQian06 阅读(64) 评论(0) 推荐(0)
摘要:P1268 树的重量 $\texttt{solution}$ 算法:(贪心)\(+\) 找规律 当 \(n=2\) 时,显然答案就是 \(dis(1,2)\) 。 当 \(n=3\) 时,答案: \(\dfrac{dis(1,3)+dis(2,3)-dis(1,2)}{2}\) 当 \(n\) 是任 阅读全文
posted @ 2021-09-20 14:11 EricQian06 阅读(42) 评论(0) 推荐(1)
摘要:这是第一部分:二分图 第二部分:图的匹配—网络流 xht37 二分图与网络流 学习笔记 ix35 的 NOI 一轮复习 I:二分图网络流 Froggy 的 二分图 & 网络流 杂谈 (\(\uparrow\) 学习资料) 定义与判定 如果一张无向图可以被划分为左部点和右部点,那么这是一张二分图 定理 阅读全文
posted @ 2021-09-20 14:08 EricQian06 阅读(94) 评论(0) 推荐(0)
摘要:luogu 1477 [NOI2008] 假面舞会 容易发现: 如果图中没有环,那么面具种数一定是所有联通块内最长链之和,最少为 \(3\) 。 如果有环,则面具种数一定是所有环的大小的最大公约数。 那么只要求出每一个联通块内的最长链与环即可。 由于是有向边,难以通过有向边判断联通块,因此考虑建立一 阅读全文
posted @ 2021-09-16 14:16 EricQian06 阅读(64) 评论(0) 推荐(0)
摘要:单源最短路 SPFA $\bigstar\texttt{important}$:加入队列的时候一定要打上已经入队标记,不然可能在同一个循环内重复入队! 队列优化 Bellman-Ford 算法 。 关于 SPFA ,他死了 。 时间复杂度 $O(nm)$ (容易被卡,不太稳定) 如何判断负环: 用 阅读全文
posted @ 2021-09-09 20:40 EricQian06 阅读(59) 评论(0) 推荐(0)
摘要:非常好的博客:panyf 的 2-sat 学习笔记。 定义及实现 2-sat,简单的说就是给出 $n$ 个集合,每个集合有两个元素,已知若干个 $<a,b>$ ,表示 $a$ 与 $b$ 矛盾(其中 $a$ 与 $b$ 属于不同的集合)。然后从每个集合选择一个元素,判断能否一共选 $n$ 个两两不矛 阅读全文
posted @ 2021-09-08 14:52 EricQian06 阅读(57) 评论(0) 推荐(0)
摘要:最小、次小生成树 如何生成最小、次小生成树? Kruskal 就是暴力地将所有边排序,从小到大查看是否可以将两个连通块联通,复杂度为 $\mathcal{O((n+m)\log n)}$(如果用斐波那契对可以降到 $\mathcal{O(n\log n+m)}$)。 Prim?咕咕咕 Boruvka 阅读全文
posted @ 2021-09-08 11:18 EricQian06 阅读(57) 评论(0) 推荐(0)
摘要:1 欧拉图 OI-Wiki 1.1 欧拉图定义 通过图中所有边恰好一次且行遍所有顶点的 通路 称为欧拉通路。 通过图中所有边恰好一次且行遍所有顶点的 回路 称为欧拉回路。 具有欧拉回路 的无向图或有向图称为 欧拉图 。 具有欧拉通路但不具有欧拉回路 的无向图或有向图称为 半欧拉图 。 非形式化地讲, 阅读全文
posted @ 2021-08-04 17:33 EricQian06 阅读(506) 评论(0) 推荐(0)
摘要:第一部分:图的匹配—二分图 这是第二部分:网络流 网络流 \(24\) 题题解 网络流基础建模 费用流基础建模 (\(\uparrow\) 学习资料) 最大流求解 P3376 【模板】网络最大流 P4722 【模板】最大流 加强版 / 预流推进 EK 算法 复杂度:\(O(nm^2)\),所以,关于 阅读全文
posted @ 2021-07-26 22:22 EricQian06 阅读(183) 评论(0) 推荐(0)