图论
huanzhizun
这个作者很懒,什么都没留下…
展开
-
LCA在线算法
#include #include #include #include #include #define max 400005 using namespace std; int deap[max],vis[max],dis[max],kk[32][max]; int maxlog; struct pi { int to; int cost; }pp; vectorg[max]; v原创 2014-04-28 12:56:25 · 651 阅读 · 0 评论 -
LCA离线算法
#include #include #include #define maxn 1000000 using namespace std; int fa[maxn],lca[maxn];//lca[maxn]记录某条边的祖先值,而非节点 struct pi { int to; int cost; int num; }pp; vectorg[maxn]; vectorgg[ma原创 2014-04-28 12:53:20 · 539 阅读 · 0 评论 -
强连通分量(tarjan算法)
#include #include #include #include #include #define max 110 using namespace std; int par[max],in[max],out[max]; int low[max],dnf[max],sta[max],ccount,tot,cnt;//ccount为强连通分量个数 bool use[max]; vectorg[m原创 2014-04-29 09:22:03 · 654 阅读 · 0 评论 -
bzoj 4025: 二分图 (分治+图论)
我们注意到如果出现奇环就爆炸,所以我们维护并查集即可,但是如果要连u,v我们考虑u、v到根的距离分别为x,y如果(x+y)%2==0那么根直接合并,但是如果是奇数那么久新建一个点变成x和y的父亲,注意用深度维护平衡。 #include #include #include #include #include #include #include #include #include原创 2016-08-09 21:26:31 · 529 阅读 · 0 评论