思路:强连通分量缩点,建立一颗新的树,然后求树的最长直径,然后加上一条边能够去掉的桥数,就是直径的长度。 树的直径长度的求法:两次bfs可以求,第一次随便找一个点u,然后进行bfs搜到的最后一个点v,一定是直径的一个端点(证明从略),第二次以点v为开头进行bfs,求出的最后一个点,就是直径的另一个端 ...
分类:
其他好文 时间:
2016-06-01 19:34:11
阅读次数:
217
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4612 题意:一个包含n个节点m条边的无向连通图(无自环,可能有重边)。求添加一条边后最少剩余的桥的数目。 思路:要想尽可能地消灭桥,那么添加的这条边一定是连通了最多的BCC。 所以首先进行双连通分量分 ...
分类:
其他好文 时间:
2016-05-31 12:05:27
阅读次数:
178
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4612 所有图论题都要往树上考虑 题意:给一张图,仅允许添加一条边,问能干掉的最多条桥有多少。 必须解决重边的问题,最后会说。 首先tarjan跑出所有的双连通分量和是桥的边还有桥的数量,这非常重要。接着 ...
分类:
其他好文 时间:
2016-05-24 11:53:59
阅读次数:
199
Warm upTime Limit:5000MSMemory Limit:65535KB64bit IO Format:%I64d & %I64uSubmitStatusPracticeHDU 4612Description N plan...
分类:
其他好文 时间:
2015-11-06 21:00:49
阅读次数:
353
Warm upTime Limit: 10000/5000 MS (Java/Others)Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 5093Accepted Submission(s): 1131Problem De...
分类:
其他好文 时间:
2015-10-13 15:09:43
阅读次数:
160
给出一个无向图,你可以加一条边,使得加上边之后的图割边数量最少。方法:每个边双连通分量缩点,形成一个树,树上的每条边都是割边,割边数量为S1;接下来只要算出树上最长路径(树的直径)就可以了,最长路径两段连线,路径上的割边都不可能再成为割边了,记最长路径长度为S2;Ans=S1-S2;第一步可以用Ta...
分类:
其他好文 时间:
2015-08-27 22:41:42
阅读次数:
130
Warm up
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)
Total Submission(s): 4830 Accepted Submission(s): 1086
Problem Description
N planets are conne...
分类:
其他好文 时间:
2015-08-18 22:52:11
阅读次数:
165
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4612给一个无向图, 加上一条边后,求桥至少有几个;那我们加的那条边的两个顶点u,v;一定是u,v之间含有桥的数量最多,然后uv之间的桥都没了,剩下的就是要求的结果;树的直径的定义刚好就是两个节点之间含有...
分类:
其他好文 时间:
2015-08-17 23:27:49
阅读次数:
132
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4612给一个无向图, 加上一条边后,求桥至少有几个;那我们加的那条边的两个顶点u,v;一定是u,v之间含有桥的数量最多,然后uv之间的桥都没了,剩下的就是要求的结果;树的直径的定义刚好就是两个节点之间含有...
分类:
其他好文 时间:
2015-08-14 13:37:09
阅读次数:
141
题目大意:给你一个无向图,问加一条边之后最少还剩下几座桥。(注意重边处理)分析:其实当我们把边双连通分量给求出来之后我们就能将连通块求出来,这样我们就可以重新构图。重新构造出来的图肯定是一颗树了,那么问题就转化为求树的哪两个节点的距离最长。我们可以随便找一个点S开始BFS, BFS到这个点最远的那个...
分类:
其他好文 时间:
2015-08-10 19:25:41
阅读次数:
133