并查集
文章平均质量分 63
616156
赛高______↑
展开
-
【数据结构】【线段树&并查集&栈】CF500E New Year Domino
题意:给出N个多米诺骨牌(均位于一条数轴上),每个骨牌有一个高度与坐标,现在有Q次询问, 每次询问给出L与RL与RL与R,现在推倒第LLL个骨牌,我们可以给某些骨牌临时增加高度(仅用于此次询问),每增加1高度,需要1的代价,现在要使第RRR个骨牌倒下,求最小的代价。分析:首先,我们有一个直观的想法:我们将每个骨牌延长,使得它倒下后能碰到它后面一个骨牌。 然而,有一种情况,使...原创 2018-03-01 18:09:31 · 264 阅读 · 0 评论 -
【构造】Codeforces1012E Cycle sort
题意:给出一个序列,通过一些循环,将其排列成一个不下降的序列。 要求所有循环的长度不超过sss,并且使得满足条件的情况下,循环的个数尽量少。分析:如果不考虑限制条件sss,很显然,原序列任意一个排列都能在不超过2次循环内求出答案。构造方法很简单。众所周知,任意一个排列都可以表示成几个不相交的循环。那么如果长度不为1的循环只有一个,那么只需要这个循环倒过来做一次,就能恢复成...原创 2018-08-01 10:58:56 · 455 阅读 · 0 评论 -
【并查集】HDU6334 Problems on a Tree
题意:给出一颗树,树上有三种权值的边。 给出m次修改以及询问每次修改将某条边的权值-1(1则不变)定义从uuu能走到vvv的条件是,在从uuu到vvv的路径上,遇到第一条权值为3的边后,之后只有权值为1的边。询问有2个,首先询问能否从t走到s,其次询问有多少点能走到s分析:考场上再次看错题。。。。尼玛是棵树啊!!!!后来发现错误,想到正解已经是最后30分钟了。...原创 2018-08-02 11:18:18 · 624 阅读 · 4 评论 -
【仙人掌?】【并查集】HDU6350 Always Online
分析:考场上看都没看的题。。。但实现起来居然异常简单(相对于隔壁D题动态点分治而言)。。。。这题除了利用了仙人掌图的定义。。其它都和仙人掌没关系。。。先考虑一个相对简单的问题: 如果给的是棵树,怎么求答案?树的性质无非就是两点间路径唯一,也就是说,这里的“最大流”可以看作两点间路径上的边权最小值。从大到小加入边。每次加入时,因为两端点所在的联通块中,这条边边权一定是最...原创 2018-08-07 12:10:02 · 399 阅读 · 0 评论 -
【并查集】Codeforces1027F Session in BSU
题意:给出n场考试,每场考试有2天可以通过(第aiaia_i与bibib_i天)。每天最多参加一场考试,现在要求所有考试全部通过的最小天数。分析:可以把每天看作一个点,每次考试看作一条边。现在要每条边选择一个点,把每个联通块分别考虑,很容易发现: 如果是树(n=m+1),那么只有1个点不用选,为了最优性,肯定不选最大的一个。 如果是基环外向树(n=m),那么所有点都必须选。...原创 2018-08-19 10:30:31 · 443 阅读 · 0 评论 -
【并查集】Baltic2016 Park
分析:很简单的并查集水题。每个圆视为一个点,上下左右四个边界各视为一个点,两点间距离表示:最大能穿过的圆的直径。所以可以先把n2n^2n2条边的预处理出来,然后再把边权从小到大排序,询问的圆也从小到大排序即可。判断一下几个边界是否连通,就能知道它能到达哪些点。只不过卡精度了很难受。。。所以得用longlong二分适合的边权。。。#include<cstdio>#inc...原创 2019-03-06 21:59:41 · 137 阅读 · 0 评论