![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论-BCC
tianxiang971016
ztx97
blog.ztx97.win(希望有生之年搭起来
展开
-
[HDU2460] Network [2008 Asia Hefei Regional Contest Online E]
题意给出一个无向图以及Q次询问,每次询问增加一条无向边,要求输出增加这条边后剩余的桥的数目。题解先做一次dfs求出所有的桥,并且记录这棵dfs树,当一次询问加入一条边(a,b)之后,会在dfs上形成一个环,在这个环上的桥都变为非桥,这个环肯定经过a和b的LCA,此时我们只需在求LCA的过程中把经过的为桥的树边标记为非桥,同时cnt_bridge–再输出即可。代码/******************原创 2016-07-26 09:35:41 · 280 阅读 · 0 评论 -
[HDU5739] Fantasia [2016 Multi-University Training Contest 2(多校联合训练2) F]
题意给出一个无向图,ziz_i是删除掉第ii个点后,所有联通块点权乘积的和,求∑ni=1zi⋅i\sum_{i=1}^{n} z_i\cdot i.题解如果一个点不是关节点(割点),很好计算权值,如果一个点是关节点,则连通性会发生变化. 首先求出所有的点双联通分量, 对于每一个点双联通分量新建节点blockiblock_i, 向这个点双联通分量中每个节点连边(原图中的边都去掉). 这样一来, 新增原创 2016-07-28 20:47:01 · 417 阅读 · 0 评论 -
[Codeforces Round #310 DIV1E (CF555E)] Case of Computer Network
题意给出一个无向图,要求将每一条边变为单向的,并且满足给定的点对的连通性。题解首先找出边双连通分量,边双连通分量中的点对一定存在对边的取向使得分量中任意两点相互到达(看做一个或多个圆环套在一起)。 缩点,重新标号,构建新图,一定会得到一棵或多棵树。 下面描述的点都为重新标号后的点,且在同一棵树中。 对于每个连通性要求u→vu \to v,设他们的最近公共祖先为lcalca,更特殊地,lca≠u原创 2017-01-24 14:05:10 · 365 阅读 · 0 评论