![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
双联通分量
蜗角虚名羊
这个作者很懒,什么都没留下…
展开
-
bzoj2730: [HNOI2012]矿场搭建(点双)
题目题解:无向图双联通分量 详见注释标程:#include<bits/stdc++.h>using namespace std;#define M(a) memset(a,0,sizeof(a))#define v e[i].totypedef long long ll;const int N=503;struct kk{ int to...原创 2018-04-23 09:37:38 · 165 阅读 · 0 评论 -
51nod 1470 计算机网络问题
题目题解Solution一个边双连通分量一定可以找到一个不走重复边的环这个的话用两个之间一定存在至少两条没有公共边的路径可以得证所以双连通分量的所有点是可以随便两两到达的于是我们可以先来一发双连通缩点然后就变成了一个树差分一下Code#include<bits/stdc++.h>using namespace std;const int N=200001;st...转载 2018-10-24 15:05:23 · 201 阅读 · 0 评论 -
bzoj5463: [APIO2018] 铁人两项(圆方树)
题目题解最后树的形态我描述一下,我刚开始就是因为想象中树的形态是错的才理解了好久每个方点下面连着一堆圆点,两棵树之间的公共点为这两个点双的割点再补充一下题解中的(3),uuu到vvv的路径上的点双是包括uuu和vvv的#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;typedef long long ll;const int N=1...原创 2019-02-19 09:52:12 · 148 阅读 · 0 评论 -
bzoj2125: 最短路
题目Solution思路先对仙人掌图建圆方树,圆圆边和原图边权一致。对于每个方点代表的环,记深度最小的点为xxx,xxx为方点,圆方边的边权是圆点到xxx的最短距离若lca(u,v)lca(u,v)lca(u,v)为圆点,则两点间最短路转化为圆方树上dis[u]+dis[v]−2∗dis[lca]dis[u]+dis[v]-2*dis[lca]dis[u]+dis[v]−2∗dis[lca...原创 2019-02-20 10:42:28 · 315 阅读 · 0 评论 -
bzoj5329: [Sdoi2018]战略游戏
题目题解Solution问题可转化成求点集之间两两的路径并Code#include<bits/stdc++.h>using namespace std;const int N=300002,M=100002;struct node{ int to,ne;}e[N<<1],E[M<<2];int fa[N][20],dep[N],TOT,to...转载 2019-03-11 11:42:18 · 187 阅读 · 0 评论