摘要: 题意和poj3352一样。。唯一区别就是有重边,预先判断一下就好了 #include<map> #include<set> #include<list> #include<cmath> #include<queue> #include<stack> #include<vector> #include 阅读全文
posted @ 2017-10-27 21:46 walfy 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 题意:给一个无向图,问最少加几条边变成边-双联通 题解:求一次双联通,缩点,这样就变成了一棵树,结果就是(树上的叶子节点+1)/2,叶子节点可以通过入度判断 #include<map> #include<set> #include<list> #include<cmath> #include<que 阅读全文
posted @ 2017-10-27 21:19 walfy 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 前言:关于如何求双连通分量,我们可以在tarjan搜索时标记下所有桥的位置(双连通分量(可以认为是没有桥的无向图图)即可通过删去所有桥得到),那么怎么找桥呢,对于每一条搜索到的边u->x,如果low【u】>dfn【x】则说明u不能通过子图到达比x更早的节点,那么就说明该边是桥 题意:把一个无向图变成 阅读全文
posted @ 2017-10-27 19:13 walfy 阅读(192) 评论(0) 推荐(0) 编辑