![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并查集
小王子y
互关啊!!
展开
-
搭配购买(并查集,01背包问题)
Joe觉得云朵很美,决定去山上的商店买一些云朵。 商店里有 n 朵云,云朵被编号为 1,2,…,n,并且每朵云都有一个价值。 但是商店老板跟他说,一些云朵要搭配来买才好,所以买一朵云则与这朵云有搭配的云都要买。 但是Joe的钱有限,所以他希望买的价值越多越好。 输入格式 第 1 行包含三个整数 n,m,w,表示有n 朵云,m 个搭配,Joe有 w 的钱。 第 2∼n+1行,每行两个整数 ci,di 表示 i 朵云的价钱和价值。 第 n+2∼n+1+m 行,每行两个整数 ui,vi,表示买 ui 就必须买 v原创 2021-02-28 20:08:49 · 125 阅读 · 0 评论 -
USACO城堡(并查集)
农夫约翰购买的彩票中了大奖,这让他赢得了一座坐落于爱尔兰乡村的如同神话一般的城堡! 约翰想要将关于城堡的一切统统告诉奶牛,让它们一起分享他的快乐。 在这之前,他需要知道城堡中共有多少个房间,最大的房间有多大。 此外,他还想拆掉一堵墙从而腾出一个更大的房间来。 城堡的平面图可以被划分为 N×M个方格区域,每个方格区域可以有0~4面墙。 当然,城堡的外边缘一定都是墙壁,从而防止风吹雨打。 参考一下下面这个带注释的城堡平面图: 1 2 3 4 5 6 7 ########原创 2021-01-18 16:26:37 · 203 阅读 · 0 评论 -
格子游戏(并查集)
Alice和Bob玩了一个古老的游戏:首先画一个 n×n 的点阵(下图 n=3 )。 接着,他们两个轮流在相邻的点之间画上红边和蓝边: 直到围成一个封闭的圈(面积不必为 1)为止,“封圈”的那个人就是赢家。因为棋盘实在是太大了,他们的游戏实在是太长了! 他们甚至在游戏中都不知道谁赢得了游戏。 于是请你写一个程序,帮助他们计算他们是否结束了游戏? 输入格式 输入数据第一行为两个整数 n 和 m。n表示点阵的大小,m 表示一共画了 m 条线。 以后 m 行,每行首先有两个数字 (x,y),代表了画线的起点坐标原创 2021-01-12 23:14:26 · 537 阅读 · 2 评论 -
837. 连通块中点的数量(并查集)
给定一个包含n个点(编号为1~n)的无向图,初始时图中没有边。 现在要进行m个操作,操作共有三种: “C a b”,在点a和点b之间连一条边,a和b可能相等; “Q1 a b”,询问点a和点b是否在同一个连通块中,a和b可能相等; “Q2 a”,询问点a所在连通块中点的数量; 输入格式 第一行输入整数n和m。 接下来m行,每行包含一个操作指令,指令为“C a b”,“Q1 a b”或“Q2 a”中的一种。 输出格式 对于每个询问指令”Q1 a b”,如果a和b在同一个连通块中,则输出“Yes”,否则输出“N原创 2020-10-25 00:57:10 · 280 阅读 · 0 评论 -
1389:亲戚 并查集
1389:亲戚 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 4599 通过数: 1471 【题目描述】 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的某个人所在家族的人数。 规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。 【输入】 第一行:三个整数n,(n≤100,000,m≤200,000),分别表示有n个人,m个信息。 以下m行:原创 2020-10-23 22:26:05 · 215 阅读 · 0 评论