上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 22 下一页
摘要: 题意:求全局最小割 不能用网络流求最小割,枚举举汇点要O(n),最短增广路最大流算法求最大流是O(n2m)复杂度,在复杂网络中O(m)=O(n2),算法总复杂度就是O(n5);就算你用其他求最大流的算法,算法总复杂度也要O(n4)。所以用网络流算法求解最小割集复杂度不会低于O(n4)。所以就要用St 阅读全文
posted @ 2018-06-26 20:28 demianzhang 阅读(436) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个无向图,判断是否任意两点间都存在至少3条互相独立的路,独立指公共顶点只有起点和终点。算法:枚举每个点,删去后用Tarjan判断图中是否存在割点,如果存在则该图不满足三连通性。Tarjan中保存搜索树,多子树的根节点为割点;dfs顺序为节点编号,dp得到每个子树通过回边能回到的最小编号,若某点的子树们能回到的点大于等于自己,则该点为割点。转自:yogykwan 1 #include... 阅读全文
posted @ 2018-06-24 23:18 demianzhang 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 转自:byvoid:有向图强连通分量的Tarjan算法 Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的所有节点是否为一个强连通分量。 有两个概念:1.时间戳,2.追溯值 时间戳是dfs遍历节 阅读全文
posted @ 2018-06-24 19:02 demianzhang 阅读(482) 评论(0) 推荐(0) 编辑
摘要: 题意:现在有m个池塘(从1到m开始编号,1为源点,m为汇点),及n条有向水渠,给出这n条水渠所连接的点和所能流过的最大流量,求从源点到汇点能流过的最大流量 Dinic 建图的另一种方法,上面有两种邻接表的方法,一种是单纯用数组模拟,可以运用异或操作反向边;另一个是vector模拟,反向边做特别记录 阅读全文
posted @ 2018-06-23 23:55 demianzhang 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 题意: 给定n个点的有向完全图,希望通过其中n-1条边将n个点串起来(2<=n<=1000) 欧拉路径:经过所有边且只经过一次 哈密顿路径:经过所有点且只经过一次 思路: 本题条件特殊,有向完全图。构造法求解,将点插在head之前,tail之后,或head和tail之间(实际插在head后或tail 阅读全文
posted @ 2018-06-22 21:44 demianzhang 阅读(532) 评论(0) 推荐(0) 编辑
摘要: 类型:给出一些形如a−b<=k的不等式(或a−b>=k或a−b<k或a−b>k等),问是否有解【是否有负环】或求差的极值【最短/长路径】。例子:b−a<=k1,c−b<=k2,c−a<=k3。将a,b,c转换为节点;k1,k2,k3转换为边权;减数指向被减数,形成一个有向图: 由题可得(b−a) + 阅读全文
posted @ 2018-06-20 22:21 demianzhang 阅读(253) 评论(0) 推荐(0) 编辑
摘要: POJ 1364 题解:最短路式子:d[v]<=d[u]+w 式子1:sum[a+b+1]−sum[a]>c — sum[a]<=sum[a+b+1]−c−1 — (a+b+1,a) −c−1 式子2:sum[a+b+1]−sum[a]<c — sum[a+b+1]<=sum[a]+c−1 — (a 阅读全文
posted @ 2018-06-20 19:17 demianzhang 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 差分约束系统,求最小值,跑最长路。 转自:https://www.cnblogs.com/ehanla/p/9134012.html 题解:设sum[x]为前x个咕咕中至少需要赶走的咕咕数,则sum[b]−sum[a−1]>=c表示[a,b]区间至少赶走c只。题目中选择的是最少,我们需要跑最长路,因 阅读全文
posted @ 2018-06-19 22:17 demianzhang 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 求连通域个数,简单题 阅读全文
posted @ 2018-06-19 17:40 demianzhang 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 给定数字n,m(1<=n,m<=500000) 将n变为n*2花费2,将n变为n-3花费3,要求过程中所有数字都在[1,500000]区间内。 求将n变为m的最少花费 思路:建图 将每个数字视为图中的点,数字之间的转换视为图中的边,有向图。 500000个点,(i,i*2)权值为2,(i,i-3)权 阅读全文
posted @ 2018-06-18 22:12 demianzhang 阅读(342) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 22 下一页