并查集
LOI_xczhw
这个作者很懒,什么都没留下…
展开
-
CODEVS 1069 关押罪犯
屠龙宝刀点击就送 作为2010年这种神题库的压轴的大题,这道题难度却不如另外几道…… 题目大意: 有两座监狱,一堆人,有的人有关系,如果有关系的两个人ai,bi在同一座监狱里,就会产生ci坏的影响。然后你的boss就会很不爽,于是乎,你就想着,让最坏的影响尽量小,求是多少(最小化最大值) 输入描述: 第一行 罪犯的数目,边的数目原创 2015-10-12 21:23:25 · 741 阅读 · 0 评论 -
【codevs 1001】舒适的路线
嘛嘛…… 这题能做?原创 2016-10-14 21:52:28 · 497 阅读 · 0 评论 -
【codevs 1069】关押罪犯
贪心 按影响排序 然后恩恩 如果same(x,y +n),说明x和y不在同一个监狱里 如果在合并之前,已经same(x,y)就输出答案#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;const int MAXN = 200000 + 5;in原创 2016-10-14 21:54:13 · 513 阅读 · 0 评论 -
【codevs 1450】小天昊的旅行2333333
我滴妈这个题好神啊…… Q == Question A == LOI_aQ:我去这题怎么做 A:我看看…… A:数据范围? Q:200000…… A:这题能做? Q:QAQ A:我回去看看 (两分钟后) A:先跑个最小生成树,恩恩,然后在合并两棵树的时候,这条边一定是最大的,那么统计下答案,是左边的大小 * 右边的大小 Q:QAQ A:显然这个数组是单调的,二分查找下就行原创 2016-10-14 22:02:26 · 922 阅读 · 0 评论 -
【codevs 2492】上帝造题的七分钟2
QAQ这题不是线段树? 参见切水果#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>using namespace std;typedef long long ll;const int MAXN = 100000 + 5;ll num[MAXN];in原创 2016-10-14 22:04:13 · 612 阅读 · 0 评论 -
【各大OJ】并查集专题
codevs 1073 codevs 1365 这种题还有双倍经验? codevs 1299 codevs 1191 双倍经验 戳这里! codevs 1001 codevs 2842 双倍经验 戳这里! codevs 1069 戳这里!1 codevs 1995 戳这里! codevs 2639 codevs 1450 戳这里! codevs 2492 戳这里!初始化到2n ↩原创 2016-10-14 19:26:33 · 761 阅读 · 0 评论 -
【codevs 1299】切水果
QAQ这题居然能用并查集…… 我滴妈 find(i)表示从i往右(包括i)的第一个没有被删除的数字 恩恩 当然初始化的时候f[i] = i 恩恩 注意这样的话就不能按秩合并了 恩恩#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;const原创 2016-10-14 20:56:28 · 514 阅读 · 0 评论 -
【codevs 1995】黑魔法师之门
嗯…… 通过样例看出来,答案要么不变,要么*2+1 然后 发现如果新加的这条边same(l[i].f,l[i].t),就*2+1 证明以后再说,机房要关门了……#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>using namespace std;const int MAXN = 2原创 2016-10-14 21:56:47 · 672 阅读 · 2 评论