![](https://img-blog.csdnimg.cn/20210918211956586.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
图论 - 无向图的连通性
无向图的连通性
繁凡さん
只想当个小透明,就图一乐^q^,希望可以做出一些微小的贡献(目前研究方向:自然语言处理、深度学习中的对抗攻击、元学习,欢迎大佬们来与我交流^0^)
展开
-
AcWing 397. 逃不掉的路(边双连通分量缩点成树 + 树链剖分乱搞)
我们知道在同一个边双连通分量中的点没有必经边(因为至少有两条分离的路径)。 所以我们直接tarjan求出桥后缩点,然后求一下树上两点间的距离即可。 那么如何求树上两点间距离呢,当然是用lca+bfs处理啦,答案就是dep[u]+dep[v]-2*dep[LCA(u,v)]; 等等, 当然是树链剖分乱搞啦! 树链剖分乱搞: 正解lca: 啊这,树链剖分天下第一!(其实用树链剖分还TLE了一发,又交了一次运气好过了…) 树链剖分AC代码: #include<iostream> #include.原创 2020-11-05 22:12:23 · 344 阅读 · 0 评论 -
UVA1364 Knights of the Round Table(双连通分量、二分图染色,超详细解释)
UVA1364 Knights of the Round Table #include<cstdio> #include<cmath> #include<algorithm> #include<iostream> #include<cstring> #include<vector> using namespace std; typedef long long ll; const int N = 5007, M = 500007, IN原创 2020-10-25 22:36:17 · 238 阅读 · 1 评论 -
UVA1108 Mining Your Own Business(思维、割点)(2011 ICPC - WorldFinal)
如果将割点涂黑是不划算的,因为这样的话如果割点倒塌之后,那么这个割点的点双连通分量之中的所有点都没了,那么就需要开两个黑点了,然而我们实际上只需要将这个点双连通分量中的任意一个非割点涂黑即可。即使这个割点倒塌了之后我们也可以经过割点跑到其他的点双连通分量里躲避。 进一步分析得如果这个点双连通分量只有一个割点时才需要选择一个非割点涂黑,如果至少有两个割点的话我们就不用管这个分量了,因为一个割点塌了还有其他的割点可以出去。 有一个特殊情况是如果整个图中都没有割点,那么我们需要涂两个黑点,此时的方案总数为v(v−原创 2020-10-02 16:21:20 · 272 阅读 · 0 评论 -
POJ 3177 Redundant Paths(变成边双连通分量所需要新建的边数)
POJ 3177 Redundant Paths In order to get from one of the F (1 <= F <= 5,000) grazing fields (which are numbered 1…F) to another field, Bessie and the rest of the herd are forced to cross near the Tree of Rotten Apples. The cows are now tired of ofte原创 2020-09-15 20:53:22 · 186 阅读 · 0 评论 -
HDU 4738 Caocao‘s Bridges(桥、任何位运算一定都要加括号、因为有重边所以用前向星)
HDU 4738 Caocao’s Bridges(桥、任何位运算一定都要加括号、因为有重边所以用前向星) Caocao was defeated by Zhuge Liang and Zhou Yu in the battle of Chibi. But he wouldn’t give up. Caocao’s army still was not good at water battles, so he came up with another idea. He built many islands原创 2020-09-15 11:18:28 · 201 阅读 · 0 评论 -
解题报告:【kuangbin带你飞】专题九 连通图
目录A、POJ 1236 Network of Schools(有向图缩点)B、UVA 315 Network(找割点)C、UVA 796 Critical Links(桥)D、POJ 3694 NetworkE、POJ 3177 Redundant PathsF、HDU 4612 Warm upG、HDU 4635 Strongly connected(最多可加边数使得仍然非强连通)H、HDU 4685 Prince and PrincessI、HDU 4738 Caocao's Bridges A、PO原创 2020-09-14 21:36:15 · 2781 阅读 · 0 评论 -
【图论专题】无向图的双连通分量
A、AcWing 395. 冗余路径 结论:变成边双连通分量所需要新建的边数 无向图 连多少条边使得整个无向图变成任意两个点之间都有两条完全不相同的路径。 结论1:任意两个点之间都有两条完全不相同的路径 =>=>=> 没有割边 =>=>=> 边双连通图 结论2: 需要新建的边数:cnt+12\frac{cnt + 1}{2}2cnt+1 (下取整)(其中cnt为将所有的边双连通图缩点以后有割桥形成树的叶子节点,也就是度数为1的结点数) 首先我们可以对图进行边连.原创 2020-07-29 23:24:18 · 814 阅读 · 0 评论 -
模板 - 无向图的连通性
整理的算法模板合集: ACM模板 目录tarjan算法求无向图的桥、边双连通分量并缩点tarjan算法求无向图的割点、点双连通分量并缩点结论:变成边双连通分量所需要新建的边数 tarjan算法求无向图的桥、边双连通分量并缩点 // tarjan算法求无向图的桥、边双连通分量并缩点 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<vect原创 2020-07-29 17:50:28 · 593 阅读 · 0 评论