并查集
LOI_pingxing
这个作者很懒,什么都没留下…
展开
-
[codevs1450] xth的旅行
题目描述 Description 毕业了,Xth很高兴,因为他要和他的 rabbit 去双人旅行了。他们来到了水城威尼 斯。众所周知(⊙﹏⊙b汗),这里的水路交通很发达,所以 xth 和 rabbit 只好坐 船穿梭于各个景点之间。但是要知道,rabbit 是会晕船的,看到她难受,xth 是会 心疼的。 已知城市中有n个景点,这些景点之间有m条双向水路,在每条水路上航行时 rabbit原创 2017-08-17 22:00:23 · 269 阅读 · 0 评论 -
[codevs2597]团伙
题目描述 Description 1920年的芝加哥,出现了一群强盗。如果两个强盗遇上了,那么他们要么是朋友,要么是敌人。而且有一点是肯定的,就是:我朋友的朋友是我的朋友;我敌人的敌人也是我的朋友。 两个强盗是同一团伙的条件是当且仅当他们是朋友。现在给你一些关于强盗们的信息,问你最多有多少个强盗团伙。输入描述 Input Description 输入文件gangs.in的第一行是一个整数N(2<原创 2017-08-18 13:51:22 · 265 阅读 · 0 评论 -
[codevs1191]数轴染色 并查集
在一条数轴上有N个点,分别是1~N。一开始所有的点都被染成黑色。接着 我们进行M次操作,第i次操作将[Li,Ri]这些点染成白色。请输出每个操作执行后 剩余黑色点的个数。输入描述 Input Description 输入一行为N和M。下面M行每行两个数Li、Ri输出描述 Output Description 输出M行,为每次操作后剩余黑色点的个数。样例输入原创 2017-08-12 18:38:35 · 713 阅读 · 0 评论 -
[poj2524]Ubiquitous Religions
题目←裸的并查集,比较在意老师的扩展:如果包括两个同学不信仰一种宗教的关系,好像要用到hash?#include<iostream>#include<cstdio>#include<algorithm>using namespace std;const int MAXN = 100000 + 50;int fa[MAXN],n,m,a,b;void init(int n){ f原创 2017-10-02 14:36:14 · 229 阅读 · 0 评论 -
[codevs1995]黑魔法师之门
题目←容易发现题目描述的子图仅能包含强连通分量什么时候出现强连通分量呢?在两个点已经连通后又加了条边的时候,子图数 = 原子图数*2 + 1新增方案数为原子图数 + 1,意义为1、用新添的边替换两点间一条原边产生的新方案2、新添的边产生的新强连通分量#include<iostream>#include<cstdio>#include<algorithm>#define mod 10000000原创 2017-10-14 11:02:49 · 322 阅读 · 0 评论 -
[洛谷P1197]星球大战
题目←打这题的时候状态成迷……好多莫名奇妙的手滑导致wa了三次……顺便题面坑人啊!说好的一开始直接或间接联通呢QAQ思路:离线做法。由删点转为建点 每次建点时遍历点连出的所有边,如果发现连向的点还没被建起来就pass掉 新建点时联通块+1,每遍历到可以连通且不在同一块中的点(已被建的点)连通块 –; 这样新建一个点之后连通块可能比以前更少#include<iostream>#include<原创 2017-10-14 19:34:15 · 317 阅读 · 0 评论 -
[codevs1540]银河英雄传说
“我们的征途是星辰大海”原创 2017-10-14 09:46:15 · 390 阅读 · 0 评论 -
[洛谷P2898][USACO08JAN]haybale猜测Haybale Guessing
题目←题意: 总共有n个互不相同的正整数,LYK每次猜一段区间的最小值。形如[li,ri]这段区间的数字的最小值一定等于xi。 我们总能构造出一种方案使得LYK满意。直到…… LYK自己猜的就是矛盾的! 例如LYK猜[1,3]的最小值是2,[1,4]的最小值是3,这显然就是矛盾的。 你需要告诉LYK,它第几次猜数字开始就已经矛盾了。10^5~10^6数原创 2017-11-01 18:21:00 · 390 阅读 · 0 评论