并查集
x_1023
这个作者很懒,什么都没留下…
展开
-
BZOJ 1854 [Scoi2010]游戏 - 二分图匹配/并查集
考察内容:二分图匹配/并查集 二分图匹配: 考虑到二分图的特性为不能重复匹配,题意中恰有武器的两个属性只能选择一个的特性,于是联想到二分图最大匹配,将武器编号和其威力值相连,威力值有小到大调用find函数,若无法匹配则终止输出答案 并查集: 可以想象武器作为路径将两种威力值相连,相连需要一种能够体现集合性质的数据结构,于是想到并查集。并查集维护每个集合的最大值,若不成环原创 2017-08-17 00:42:42 · 194 阅读 · 0 评论 -
BZOJ 4195 [Noi2015]程序自动分析 - 并查集
NOI那年怎么全是大水题。。。要是我能在考场上见到一回就好了233 这里需要注意一个问题,不能采用合并取反的数,因为取反意为不等,而x!=y,y!=z而x==z可以成立,一定要记住,没事别取反,总想搞个大新闻。。。 #include #include #include #include #include using namespace std; const int maxn=100原创 2017-09-25 22:27:08 · 213 阅读 · 0 评论 -
BZOJ 1821 [JSOI2010]Group部落划分 - 最小生成树
一步步的思考->戳这里: http://blog.csdn.net/vmurder/article/details/42000843?utm_source=tuicool&utm_medium=referral大概就是建一个最小生成树,小边则一定要放到一个部落里面,未选的边则是不同部落,需要寻找未选的边里的最小值即为答案。由此应该从小到大贪心,如果边的两端不在一个部落则相连,边的两端在一个部落里则原创 2017-09-22 11:03:25 · 228 阅读 · 0 评论 -
BZOJ 4579 Closing the Farm - 并查集
删边就倒着建边,拿并查集一合并,维护一个size就好#include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<algorithm>using namespace std;const int maxn=200005;struct edge { int to,next; }e[maxn<<1]原创 2017-10-03 10:42:51 · 218 阅读 · 0 评论