并查集
qq_35812639
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
并查集
推荐一篇并查集讲解:http://blog.youkuaiyun.com/dellaserss/article/details/7724401 如果有需要,私我题解其实就是求最大生成树(就是最大优惠额度)能省多少钱; 需要注意的是fa[0]-fa[n-1]表示N个女孩,fa[n]-fa[b+m-1]表示男孩//http://vjudge.net/contest/140540#problem/F #inclu原创 2016-11-13 17:50:05 · 246 阅读 · 0 评论 -
Out of Hay
依然是最小生成树问题;只不过求最小生成树中最大边;与上两篇比较一下,看看规律吧这里写代码片 #include<cstdio> #include<algorithm> #include<iostream> using namespace std; int fa[2010]; //节点 struct T { int l,r; long long data; }node[10010]; /原创 2016-11-13 16:49:47 · 323 阅读 · 0 评论 -
Bad Cowtractors
】】说白了就是求最大生成树 注意一下不连通的情况输出-1即可这里写代码片 #include<cstdio> #include<iostream> #include<cstring> #include<algorithm> using namespace std; int fa[2000]; struct T { int r,l,data; }b[20005]; int Find(int x原创 2016-11-13 16:16:05 · 866 阅读 · 0 评论 -
Agri-Net
题意很简单:就是有N个节点的带权图,让你找最小生成树;这里写代码片 #include<cstdio> #include<iostream> #include<cstring> #include<algorithm> using namespace std; int fa[105],a[105][105]; struct T { int r,l,data; }b[5005]; int Find原创 2016-11-13 15:25:59 · 423 阅读 · 0 评论 -
Fix a Tree
`主要有三个步骤 1、确定根节点root2、分解环 3 连接子树 1明确是否有可行根节点,有随便找一个;没有:从环中招一个 2为了操作方便,使用并查集寻找环,并将找到第一个环的任意一个节点作为根节点。 3 在确定了根节点之后,如果遇到其他可行根节点,直接连接到已确定根节点即可,就是连接子树的操作。 用t数组来prime找环,依此修改tree数组 这里写代码片 #include<cst原创 2016-11-12 21:29:41 · 392 阅读 · 0 评论
分享