摘要: 就是求出原先图中的桥的数量,在每一次询问时加入一条新边,求加入当前边后图中剩余的桥的数量 求出原先图中的桥的数量,然后减去新加入边的两端点之间的桥的数量,就是剩余桥的数量。。 用并查集把属于同一集合的放到一起(即两个点之间没有桥的) 阅读全文
posted @ 2018-07-12 23:59 WTSRUVF 阅读(816) 评论(0) 推荐(0) 编辑
摘要: 有上述两个数组定义可知:对于某点root,其有一儿子v,则有: 1. 如果dfn[root]<=low[v]此点是割点(对于dfs树的根,即最初节点需要两个儿子才是割点) 2. 如果dfn[root]<low[v],连接root与v的边是桥。 阅读全文
posted @ 2018-07-12 21:56 WTSRUVF 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 题目大意 有N个学校,这些学校之间用一些单向边连接,若学校A连接到学校B(B不一定连接到A),那么给学校A发一套软件,则学校B也可以获得。现给出学校之间的连接关系,求出至少给几个学校分发软件,才能使得所有的学校均可以获得软件;以及,至少需要添加几条单向边连接学校,才能使得给这些学校中任何一所发软件, 阅读全文
posted @ 2018-07-12 18:41 WTSRUVF 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 原文地址:https://blog.csdn.net/qq_16234613/article/details/77431043 一、解释 在有向图G中,如果两个顶点间至少存在一条互相可达路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通 阅读全文
posted @ 2018-07-12 18:08 WTSRUVF 阅读(4667) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include #include #include #define mem(a, b) memset(a, b, sizeof(a)) using namespace std; const int maxn = 10010, INF = 0x7fffffff; int pre[maxn], low[maxn], iscut[ma... 阅读全文
posted @ 2018-07-12 16:10 WTSRUVF 阅读(143) 评论(0) 推荐(0) 编辑