
tarjan
wtcl
这个作者很懒,什么都没留下…
展开
-
冗余路径(无向图边双联通分量)
链接:https://www.acwing.com/problem/content/397/ 任意两点之间至少有两条不相交的路径(点可以相交,边不能相交)变充分必要条件是该图是边双连通图。 题目求将一个连通图变为边双连通图至少要加多少条边。 无向图经过e-DCC缩点后会变成森林或者一棵树(联通分量内部一定不需要加边)。 本题答案为(叶子节点数量+1)/2 #include<cstdio> #include<cstring> #include<iostream> #incl原创 2020-09-08 16:47:28 · 269 阅读 · 0 评论 -
最大半连通子图(有向图缩点)
先tarjan缩点 再在拓扑图上找一条最长链 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<set> using namespace std; #define ll long long const int N=1e5+1...原创 2020-04-17 21:26:07 · 222 阅读 · 0 评论 -
Network of Schools POJ - 1236(有向图tarjan缩点)
把任意一张有向图变成强连通图,缩点后有p个零入度点,q个零出度点,答案就是max(p,q); 特别的,如果图本身就是强连通图答案为0 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; const int N=10...原创 2020-04-17 17:43:23 · 98 阅读 · 0 评论 -
Popular Cows POJ - 2186(有向图缩点)
题目:https://vjudge.net/problem/POJ-2186 求从其他所有点可以到达的点的个数 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; const int N=1e4+10; const...原创 2020-04-17 16:40:54 · 118 阅读 · 0 评论 -
无向图求割点
题目:https://www.luogu.com.cn/record/32864490 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; const int N=2e4+10; const int M=2e5+1...原创 2020-04-17 11:48:02 · 125 阅读 · 0 评论 -
无向图求桥
可以解决有重边的图。 题目:https://vjudge.net/problem/UVA-796 这个题目本身有需要注意的点。 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<vector> using namespace...原创 2020-04-17 10:40:02 · 233 阅读 · 0 评论 -
有向图求强连通分量
推荐一个视频:https://www.bilibili.com/video/BV19J411J7AZ?from=search&seid=376629233923966426 题目链接:https://www.luogu.com.cn/record/32856562 #include<cstdio> #include<iostream> #include<cst...原创 2020-04-16 22:24:48 · 108 阅读 · 0 评论