摘要: 题意:一个连通无向图,问你增加一条边后,让原图桥边最少 分析:先边双缩点,因为连通,所以消环变树,每一个树边都是桥,现在让你增加一条边,让桥变少(即形成环) 所以我们选择一条树上最长的路径,连接两端,这样减少的桥边,最多,所以就是求树的直径 注:这题有重边,所以边双缩点也需要用重边版的 #inclu 阅读全文
posted @ 2016-05-13 15:41 shuguangzw 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 分析:边双缩点后,消环变树,然后答案就是所有叶子结点(即度为1的点)相连,为(sum+1)/2; 注:此题有坑,踩踩更健康,普通边双缩短默认没有无向图没有重边,但是这道题是有的 我们看,low数组是我们缩点的关键,记录最早的前驱,但是不能由父边过来,这是因为没有重边 当有重边时,父边也可以更新low 阅读全文
posted @ 2016-05-13 14:49 shuguangzw 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 这个题很简单,但是输入有毒,用字符串的我一直RE 然后换成这样瞬间AC #include <stdio.h> #include <string.h> #include <algorithm> #include <math.h> #include <vector> #include <stack> u 阅读全文
posted @ 2016-05-13 13:46 shuguangzw 阅读(122) 评论(0) 推荐(0) 编辑