
----------图论----------
文章平均质量分 72
linkfqy
A link to FQY.
展开
-
树链剖分-总结
【树链剖分是啥?】树链剖分是用于将树上操作转化为序列操作的一种算法。在信息学竞赛中有着广泛的应用。 比如:给定一棵树以及各点的权值,每次操作给出两个点,把这两点之间路径上的所有点的权值改变或者求和。 这种题目就是典型的树链剖分,转化成序列操作之后用线段树维护即可。【概念】我们把子树x的节点个数记为siz[x]。 那么对于任意节点i,定义它的儿子中siz[]最大的为i的“重儿子”(H_son[i原创 2017-04-08 18:38:41 · 1346 阅读 · 3 评论 -
网络流-最大流
【前言】网络流作为一个经典问题,在OI及实际生活中有着广泛的应用,值得我们仔细研究。【何为网络流?】网络流,是一种资源调配问题,如下图(以下图片均来自网络): 其中,S表示网络流中的源点,是资源的唯一出发点。 T表示网络流中的终点,是各种资源的目的地。 正如水管有粗细之分,道路有宽窄之分, 网络流中的每条边(这里称为弧)都有一个容量cap,表示单位时间最多能通过的资源量。 同时,每条弧原创 2017-05-15 21:12:15 · 2365 阅读 · 2 评论 -
浅谈上下界网络流
背景最近一直在做这类题目…… 感觉题目变化还是挺多的 就在这里总结一下好了……首先Orz Lynstery 本文参考博客:有上下界的网络流学习笔记——by liu_runda正文上下界网络流,显然就是对每条边有上下界流量限制的网络流问题 众人:这不废话嘛 对于上下界网络流问题,最重要的思想是“转化” 因为学习后你会发现:处理每一种情形都是要由前一种更为简单的情形转化过来,然后用同样的方法原创 2017-07-07 21:18:29 · 4995 阅读 · 4 评论 -
树分治-点分治
前言很久以前就学过树分治,但是掌握不熟练(其实是弃坑了) 所以现在重新拾起这个算法,终于填坑完成…… 发现还是挺简单的正文树分治,是用于统计树上路径的算法POJ1741就是一个很好的例子 下面会以此题为例,详细讲解树分治树分治分为两种:点分治与边分治 点分治:每次找一个点,分治所有以它的儿子为根的子树 边分治:每次找一条边,分治它连接的两个点为根的子树由于边分治容易被特殊数据卡,所以一般使原创 2017-07-10 21:29:15 · 3085 阅读 · 0 评论 -
详解差分约束系统
什么是差分约束系统?差分约束系统,是一类关于不等式组的线性规划问题 比如: 给出n个形如 a−b≤ca-b \le c的不等式,求一组任意解一般可以转化为最短路问题求解。差分约束系统的转化我们以 Xi−Yi≤ZiX_i-Y_i\le Z_i为例 观察发现,其实这个不等式与最短路问题中的“三角不等式”相似: Dist(i)+W(i,j)≥Dist(j)Dist(i)+W(i,j)\ge Dis原创 2017-07-25 22:51:47 · 1940 阅读 · 0 评论 -
浅谈2-SAT问题
SAT及2-SATSAT是一类关于变量取值的问题 具体模型:有若干个变量,各变量之间有取值约束,判断是否有一个满足所有约束的可行解,或求出某个特殊解 特殊地,若所有变量的取值都只有两种可能,那么此问题被称为2-SAT问题2-SAT的解法首先是建图。 对于2-SAT问题,我们一般先观察题目条件 把它抽象成约束关系,再进行建图。 建图时,一个变量的两个取值视为两个不同的点。比如:a|ba|b为原创 2017-07-16 19:29:02 · 1804 阅读 · 1 评论 -
边双联通分量小结+模板
为什么我之前都没学过……预备知识桥:如果去掉,图的联通块个数会增加的边DFS树:将一个图DFS遍历所得到的树非树边:不在DFS树上的边显然非树边只会存在于DFS树的点与祖先之间非树边不可能是桥边双联通分量:任意两点通过【不经过同一边】的路径可达的子图桥有了以上姿势,就可以找到一张无向图的所有桥了记录in[x]in[x]为x入栈的时间戳,low[x]low[x]为x可达的所有点中最小的in显然,DFS原创 2017-10-28 07:55:31 · 1683 阅读 · 0 评论