
并查集
olahiuj
我的女朋友不抽烟不喝酒不傲娇不化妆不存在
展开
-
A Bug's Life_poj2492_并查集
DescriptionBackground Professor Hopper is researching the sexual behavior of a rare species of bugs. He assumes that they feature two different genders and that they only interact with bugs of the op原创 2016-07-09 20:50:13 · 363 阅读 · 0 评论 -
bzoj2054 疯狂的馒头 离线+并查集
DescriptionSolution容易发现颜色只跟最后一次染有关。因为线段树显然会T,考虑离线询问倒着做 像链表一样记录每个位置往右第一个没涂颜色的位置,然后这个可以用并查集维护,然后每个点只会被染色一次,然后就做完了Code#include <stdio.h>#include <string.h>#include <...原创 2018-06-24 20:35:08 · 238 阅读 · 0 评论 -
bzoj5005 乒乓游戏 线段树+并查集
Description【故事の背景】鸡腿是CZYZ的著名DS,他为了树立高富帅的伟大形象决定暑假去张江大学学习(游玩)。在呆了一段时间之后,鸡腿突然发现,张江的妹子怎么这么少啊这么少啊这么少啊。为了勾搭妹子,鸡腿决定去玩乒乓游戏。【问题の描述】乒乓游戏可不是乒乓!乒乓好像也和这个游戏没啥关系。这个游戏的主角就是——区间。对于两个区间,如果(a,b)和(c,d)区间满足cSo...原创 2018-07-14 10:13:53 · 278 阅读 · 0 评论 -
bzoj4423 [AMPPZ2013]Bytehattan 对偶图+并查集
Description比特哈顿镇有n*n个格点,形成了一个网格图。一开始整张图是完整的。 有k次操作,每次会删掉图中的一条边(u,v),你需要回答在删除这条边之后u和v是否仍然连通。第一行包含两个正整数n,k(2<=n<=1500,1<=k<=2n(n-1)),表示网格图的大小以及操作的个数。 接下来k行,每行包含两条信息,每条信息包含两个正整数a,b(1&...原创 2018-08-13 21:15:09 · 182 阅读 · 0 评论 -
bzoj4144 [AMPPZ2014]Petrol spfa+并查集
Description给定一个n个点、m条边的带权无向图,其中有s个点是加油站。 每辆车都有一个油量上限b,即每次行走距离不能超过b,但在加油站可以补满。 q次询问,每次给出x,y,b,表示出发点是x,终点是y,油量上限为b,且保证x点和y点都是加油站,请回答能否从x走到y。第一行包含三个正整数n,s,m(2<=s<=n<=200000,1<=m<=2...原创 2018-08-19 22:39:32 · 231 阅读 · 0 评论 -
bzoj2959 长跑 LCT+并查集
Description 某校开展了同学们喜闻乐见的阳光长跑活动。为了能“为祖国健康工作五十年”,同学们纷纷离开寝室,离开教室,离开实验室,到操场参加3000米长跑运动。一时间操场上熙熙攘攘,摩肩接踵,盛况空前。 为了让同学们更好地监督自己,学校推行了刷卡机制。 学校中有n个地点,用1到n的整数表示,每个地点设有若干个刷卡机。 有以下三类事件: 1、修建了一条连接A...原创 2018-08-24 22:37:30 · 365 阅读 · 0 评论 -
bzoj2870 最长道路tree 并查集+树的直径
DescriptionH城很大,有N个路口(从1到N编号),路口之间有N-1边,使得任意两个路口都能互相到达,这些道路的长度我们视作一样。每个路口都有很多车辆来往,所以每个路口i都有一个拥挤程度v[i],我们认为从路口s走到路口t的痛苦程度为s到t的路径上拥挤程度的最小值,乘上这条路径上的路口个数所得的积。现在请你求出痛苦程度最大的一条路径,你只需输出这个痛苦程度。简化版描述:给定一棵N个...原创 2018-10-24 21:26:16 · 533 阅读 · 0 评论 -
bzoj3060 [Poi2012]Tour de Byteotia 并查集+贪心
Description给定一个n个点m条边的无向图,问最少删掉多少条边能使得编号小于等于k的点都不在环上。n<=1e6 m<=2e6Solution一个结论是,我们只会删k个点内部的边和向外连出的边。因为两端点都大于k的边上包含k个点的环肯定不会比内部和连出去的边要多,因此我们这样删一定不会更劣。然后就并查集先把外部边先全部连上,再维护其余边的生成树就行了Code#i...原创 2018-11-23 21:16:21 · 225 阅读 · 0 评论 -
3376: [Usaco2004 Open]Cube Stacking 方块游戏 带权并查集
Description约翰和贝茜在玩一个方块游戏.编号为1到n的n(1≤n≤30000)个方块正放在地上.每个构成一个立方柱.游戏开始后,约翰会给贝茜发出P(1≤P≤100000)个指令.指令有两种:1.移动(M):将包含X的立方柱移动到包含Y的立方柱上.2.统计©:统计名含X的立方柱中,在X下方的方块数目.写个程序帮贝茜完成游戏.Solution一直不会写路径压缩的带权并查集。...原创 2018-11-26 19:28:43 · 420 阅读 · 0 评论 -
bzoj4229 选择 LCT+并查集
Description现在,我想知道自己是否还有选择。给定n个点m条边的无向图以及顺序发生的q个事件。每个事件都属于下面两种之一:1、删除某一条图上仍存在的边2、询问是否存在两条边不相交的路径可以从点u出发到点v对于全部数据,max(n,m,q)<=100000Solution考虑离线变成加边,那么就是在一个环内的两点是Yes。用LCT和并查集维护加边动态求连通分量即可...原创 2018-12-01 12:06:05 · 230 阅读 · 0 评论 -
bzoj3237 [Ahoi2013]连通图 线段树分治+并查集按秩合并
Description给定n个点m条边的无向图,k次询问,每次删除s条边并询问此时图的连通性,询问互相独立。n<=1e5,m<=2e5,k<=1e5,s<=4Solution传说中的线段树分治删除和插入同时存在的话非常麻烦,因此考虑一种处理询问的顺序使得只剩插入操作我们把一条边存在的询问区间扔进线段树,然后遍历整棵线段树。遍历的时候就插入区间内的边,同时压进...原创 2018-12-27 19:46:45 · 254 阅读 · 0 评论 -
bzoj4025 二分图 线段树分治+并查集
Description神犇有一个n个节点的图。因为神犇是神犇,所以在T时间内一些边会出现后消失。神犇要求出每一时间段内这个图是否是二分图。这么简单的问题神犇当然会做了,于是他想考考你。n<=100000,m<=200000,T<=100000,1<=u,v<=n,0<=start<=end<=TSolution考虑线段树分治。构成二分图即...原创 2018-12-27 21:01:34 · 327 阅读 · 0 评论 -
CF938G Shortest Path Queries 线段树分治+线性基
Description给出一个连通带权无向图,边有边权,要求支持qqq 个操作:1 x y d 在原图中加入一条x 到y 权值为d 的边2 x y 把图中x 到y 的边删掉3 x y 表示询问x 到y 的异或最短路保证任意操作后原图连通无重边自环且操作均合法n,m,q≤200000感谢@Kelin 提供的翻译Solution真·edu难度,以后大概要多做一些数数题来长出本不存...原创 2019-01-25 16:31:09 · 275 阅读 · 0 评论 -
CF1140F Extending Set of Points 线段树分治+并查集
Description若一个点集为S,记E(S)={(x2,y2)∣(x1,y1)∈S,(x1,y2)∈S,(x2,y1)∈S,(x2,y2)∉S}E(S)=\left\{(x_2,y_2)|\right (x_1,y_1)\in S,(x1,y2)\in S,(x2,y1)\in S,(x2,y2)\notin S\}E(S)={(x2,y2)∣(x1,y1)∈S,(x1,y2)∈S...原创 2019-03-24 20:28:20 · 329 阅读 · 0 评论 -
bzoj1529 [POI2005]ska Piggy banks 乱搞
DescriptionByteazar 有 N 个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. Byteazar 已经把每个存钱罐的钥匙放到了某些存钱罐里. Byteazar 现在想买一台汽车于是要把所有的钱都取出来. 他想尽量少的打破存钱罐取出所有的钱,问最少要打破多少个存钱罐.第一行一个整数 N (1 <= N <= 1.000.000) – 表示存钱罐的总数. 接...原创 2018-06-24 19:07:00 · 322 阅读 · 0 评论 -
bzoj4569 [Scoi2016]萌萌哒
Description一个长度为n的大数,用S1S2S3…Sn表示,其中Si表示数的第i位,S1是数的最高位,告诉你一些限制条件,每个条 件表示为四个数,l1,r1,l2,r2,即两个长度相同的区间,表示子串Sl1Sl1+1Sl1+2…Sr1与Sl2Sl2+1Sl2+2…S r2完全相同。比如n=6时,某限制条件l1=1,r1=3,l2=4,r2=6,那么123123,351351均满...原创 2018-03-14 20:19:12 · 178 阅读 · 0 评论 -
皮皮_ssl2542_并查集
Description皮皮通过一次聚会认识了n个妹子。经过仔细的研究皮皮发现了一个有趣的现象:那就是有m对妹子是互相认识的。然而如果两个妹子直接或间接地认识(A认识B,B认识C,则A认识C),那么皮皮就只能在这两个妹子里面选一个来泡。 然而空空空空的皮皮想要泡到尽量多的妹子,于是皮皮就开始采取了一系列的行动:每次让两个妹子绝交。作为皮皮的路鸣泽的你需要在每次皮皮采取行动后告诉皮皮现在他最多能泡多原创 2016-10-29 12:38:42 · 508 阅读 · 0 评论 -
Starry Night_usaco 5.1_bfs+暴力
Description 高高的星空,簇簇闪耀的群星形态万千。一个星座(cluster)是一群连通的星组成的非空集合,所谓连通是指水平,垂直或者对角相邻。一个星座不能是另一个更大星座的一部分。星座可以相似(similar)。如果两个星座有相同的形状,而且包括相同数目的星体,那么不管其方向性如何,就算相似。一般而言,星座可能的方向有八个,如图1所示。 图1 相似的八个星座Input夜空可以表原创 2016-12-02 21:09:24 · 684 阅读 · 0 评论 -
食物链 洛谷2024 并查集
题目描述动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。A 吃 B,B 吃 C,C 吃 A。 现有 N 个动物,以 1 - N 编号。每个动物都是 A,B,C 中的一种,但是我们并不知道 它到底是哪一种。 有人用两种说法对这 N 个动物所构成的食物链关系进行描述: 第一种说法是“1 X Y”,表示 X 和 Y 是同类。 第二种说法是“2 X Y”,表示 X 吃 Y原创 2017-02-05 23:26:54 · 655 阅读 · 0 评论 -
修复公路 洛谷1111 并查集
题目背景A地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车。政府派人修复这些公路。题目描述给出A地区的村庄数N,和公路数M,公路是双向的。并告诉你每条公路的连着哪两个村庄,并告诉你什么时候能修完这条公路。问最早什么时候任意两个村庄能够通车,即最早什么时候任意两条村庄都存在至少一条修复完成的道路(可以由多条公路连成一条道路)输入格式:第1行两个正整数N,M下面M行,每行3个正整数x, y, t原创 2017-02-03 00:07:09 · 588 阅读 · 0 评论 -
关押罪犯 洛谷1525 并查集
题目描述S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N。他们之间的关系自然也极不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之间的积怨越多。如果两名怨气值为c 的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并造成影响力为c 的冲突事件。每年年末,警察局会将本年内监狱中的所有冲突原创 2017-02-03 00:13:20 · 390 阅读 · 0 评论 -
货车运输 洛谷1967 最大生成树 lca c++
题目描述A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。输入输出格式输入格式:输入文件名为 truck.in。 输入文件第一行有两个用一个空格隔开的整数 n,m,表示 A 国有 n 座城市和 m 条道路。接下来 m 行每行 3 个整数 x、原创 2017-02-11 16:03:02 · 764 阅读 · 0 评论 -
2017年10月5提高组T1 直径
DescriptionInputOutputHintSolution类似的,这样的题目我们可以考虑倒过来离线做,这样就变成了不断加边的步骤,用并查集维护一下合并的小树,同时记录子树内的直径一个结论:两棵树合并后直径的两个端点,一定是两棵树各自直径共四个端点中的两个 这样我们用带权的并查集+倍增搞一搞就可以了最近打这种几k的题目都不太顺手啊Code#include <stdio.h>#includ原创 2017-10-11 21:53:50 · 469 阅读 · 0 评论 -
bzoj1854 [Scoi2010]游戏 二分图匹配 并查集
Descriptionlxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示。当他使用某种装备时,他只能使用该装备的某一个属性。并且每种装备最多只能使用一次。 游戏进行到最后,lxhgww遇到了终极boss,这个终极boss很奇怪,攻击他的装备所使用的属性值必须从1开始连续递增地攻击,才能对boss产生伤害。也就是说一原创 2018-01-11 11:40:06 · 275 阅读 · 0 评论 -
bzoj1015 [JSOI2008]星球大战starwar 并查集
题目描述很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者整个星系。某一天,凭着一个偶然的机遇,一支反抗军摧毁了帝国的超级武器,并攻下了星系中几乎所有的星球。这些星球通过特殊的以太隧道互相直接或间接地连接。 但好景不长,很快帝国又重新造出了他的超级武器。凭借这超级武器的力量,帝国开始有计划地摧毁反抗军占领的星球。由于星球的不断被摧毁,两个星球之间的通讯通道也开始不可靠起来。现在,反抗原创 2017-02-05 20:17:23 · 406 阅读 · 0 评论 -
bzoj2079 [Poi2010]Guilds 并查集+乱搞
DescriptionZy皇帝面临一个严峻的问题,两个互相抵触的贸易团体,YYD工会和FSR工会,他们在同一时间请求在王国各个城市开办自己的办事处。这里有n个城市,其中有一些以双向马路相连,这两个工会要求每个城市应该做到: 1:有这个工会的办事处或 2:和另外一个符合1条件的城市有马路直接相连。(也就是每个城市必须是YYD的公会,但是又和FSR的公会的城市相连,或者是FSR的,和YYD的城原创 2018-01-08 12:04:08 · 236 阅读 · 0 评论 -
codeforces 461 D Appleman and Complicated Task
DescritpionSolution这题和之前没改出来的矩阵游走思想是类似的,即唯一确定的第一行确定了整个矩阵。那么可以设第一行为未知数,讨论一下其余位置的取值情况。可以发现(0,k)能影响到的点满足是连续的奇数或连续的偶数。那么抽出奇偶点然后就能用前缀异或和做了。 题目转化为:给定一些限制条件形如sum[l-1]^sum[r]=0或1,求可行方案数 可以回想2sat原创 2018-02-05 19:45:35 · 264 阅读 · 0 评论 -
bzoj4358 permu 回滚莫队+并查集
Description给定一个n排列a[],m次询问a[L]~a[R]中最长连续值域n,m≤5×105n,m\le 5\times 10^5n,m≤5×105Solution一个比较naive的响法就是我们离线然后莫队+线段树做,这样是O(nnlogn)O(n\sqrt n\log n)O(nnlogn)的然后本地测了一下5e5直接线段树是10s,zkw线段树大概是3s考虑只有...原创 2019-03-24 21:31:11 · 396 阅读 · 0 评论