Redundant Paths POJ - 3177 Redundant Paths 题意:一个无向图(有重边!!),问至少还要加多少边使得去掉任意一条边后任意两点仍可互达。 和上题poj3352基本相同,不过dfs的时候,不能用v!=f来判断是否能走,而要用当前走的边和上一条边是不是反向边 1 # ...
分类:
其他好文 时间:
2017-08-18 17:18:47
阅读次数:
234
Road Construction POJ - 3352 题意:一个无向图(无重边),问至少还要加多少边使得去掉任意一条边后任意两点仍可互达。 无向图的边双连通分量(无重边) 先用一次dfs标记出割边,然后dfs标记出各联通分量 再根据割边,缩点重新建图,生成一颗树 则答案就是(叶子树+1)/2. ...
分类:
其他好文 时间:
2017-08-18 17:07:18
阅读次数:
145
Railway HDU - 3394 题意:一个无向图,1求不在任何一个环里的边数;2求在不止一个环里的边数。 第一问明显就是求桥,第二问,如果求出的某个点双连通分量里面边数多于点数,说明不止一个环,那么所有的边都在不止一个环里。 该求点双连通的,,求成了边双连通。。。要仔细分析问题。 1 #inc ...
分类:
其他好文 时间:
2017-08-18 17:05:08
阅读次数:
165
填坑……链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1123 题意:问切断第i个点之后多少对点不再联通。 就是个求割点同时计算出双连通分量大小嘛…… 1 #include<iostream> 2 #include<cstdio> 3 #inc ...
分类:
其他好文 时间:
2017-08-14 21:22:54
阅读次数:
194
填坑……链接:http://poj.org/problem?id=3352 题意:求出图中再加上几条边会全部边双连通。 思路大概就是求出图中所有的双连通分量,然后像$SCC$一样缩点,缩完后每两个双连通分量再连边即可。 1 #include<iostream> 2 #include<cstdio> ...
分类:
其他好文 时间:
2017-08-14 14:21:03
阅读次数:
115
原文地址:https://www.byvoid.com/blog/scc-tarjan/ [有向图强连通分量] 在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子 ...
分类:
编程语言 时间:
2017-08-09 18:07:04
阅读次数:
168
双连通总结 这类问题分为,边-双连通。点-双连通 边双连通 边双连通,求出来后。连接没一个双连通的分量的就是割边,因此能够缩点成一棵树。把问题转化为在树上搞,割边的定义为:去掉这条边后图将不连通 基本这类题都一个解法。求双连通分量,然后缩点成树,进行操作 或者就是直接要求割边,做跟割边相关的操作 模 ...
分类:
其他好文 时间:
2017-08-07 15:18:26
阅读次数:
125
#include<cstdio> #include<cstring> #include<cmath> #include<cstdlib> #include<iostream> #include<algorithm> #include<vector> #include<map> #include<qu ...
分类:
其他好文 时间:
2017-07-30 14:53:16
阅读次数:
125
题意如上,含有重边(重边的话,俩个点就能够构成了边双连通)。 先缩点成树,在求数的直径,最远的连起来,剩下边(桥)的自然最少。这里学习了树的直径求法:第一次选随意起点U,进行bfs,到达最远的一个点v(level最深)该点必定是树的直径的一个端点,,再从该点出发,bfs,到最深的一点。该点深度就是直 ...
分类:
其他好文 时间:
2017-07-23 16:30:52
阅读次数:
252
题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=2242 题目概述: 中文题面就不赘述了。 大致思路: 其实读完题之后就知道是要求这张图所有的桥,并且分别删掉这些桥来更新答案。 那么就是求边双联通分量了,求出来之后缩点,原图变成一棵树,然后在树上维护这 ...
分类:
其他好文 时间:
2017-07-16 12:32:35
阅读次数:
153