7-36 并查集【模板】 (10 分)
7-36 并查集【模板】 (10 分)
给出一个并查集,请完成合并和查询操作。
输入格式:
第一行包含两个整数N、M,表示共有N个元素和M个操作。
接下来M行,每行包含三个整数Zi、Xi、Yi。
当Zi=1时,将Xi与Yi所在的集合合并。
当Zi=2时,输出Xi与Yi是否在同一集合内,是的话输出Y;否则的话输出N。
输出格式:
对于每一个Zi=2的操作,对应一行输出,每行包含一个大写字母,为Y或者N。
输入样例:
4 7
2 1 2
1 1 2
2 1 2
1 3 4
2 1 4
1 2 3
2 1 4
结尾无空行
输出样例:
N
Y
N
Y
结尾无空行
数据规模:
对于30%的数据,N<=10,M<=20;
对于70%的数据,N<=100,M<=1000;
对于100%的数据,N<=10000,M<=200000。
#include<iostream>
using namespace std;
int n,m;
int p[1000000];
int find(int x){if(p[x]!=x) p[x]=find(p[x]);return p[x];
}
void unite(int x,int y){int fx=find(x);int fy=find(y);p[fx]=fy;
}
int main(){scanf("%d%d",&n,&m);for(int i=1;i<=n;i++)p[i]=i;for(int i=0;i<m;i++){int z,x,y;cin>>z>>x>>y;if(z==1)unite(x,y);else{if(find(x)!=find(y))puts("N");else puts("Y");}}return 0;
}
7-36 并查集【模板】 (10 分)相关推荐
- 【CCCC】L3-003 社交集群 (30分),并查集模板,map排序
problem L3-003 社交集群 (30分) 当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友.一个"社交集群"是指部分兴趣 ...
- 并查集模板题(stl 中map的运用)
DongDong认亲戚 DongDong每年过春节都要回到老家探亲,然而DongDong记性并不好,没法想起谁是谁的亲戚(定义:若A和B是亲戚,B和C是亲戚,那么A和C也是亲戚),她只好求助于会编程的 ...
- 【SCAU 新生赛】18247 aler的旅游计划 并查集模板题
18247 aler的旅游计划 该题有题解 时间限制:1000MS 代码长度限制:10KB 提交次数:15 通过次数:0 收入:10 题型: 编程题 语言: 不限定 Description aler想 ...
- 强盗团伙(啊哈-并查集[模板])
题目 快过年了,犯罪分子们也开始为年终奖"奋斗"了,小哼的家乡出现了多次抢劫事件.由于强盗人数过于庞大,作案频繁,警方想查清楚到底有几个犯罪团伙实在是太不容易了,不过警察叔叔还是搜 ...
- 战争来临(并查集模板题)
战争来临(并查集模板题) 描述 那一个骑单车卖报纸的少年 恐慌的眼泪慢慢布满了侧脸----<战争世界> B国对A国发动了侵略战争,A国不得不全力抵御.A国幅员辽阔,后方群众的支援补 ...
- HDU 1213 How Many Tables(并查集模板)
http://acm.hdu.edu.cn/showproblem.php?pid=1213 题意: 这个问题的一个重要规则是,如果我告诉你A知道B,B知道C,这意味着A,B,C知道对方,所以他们可以 ...
- 【畅通工程 HDU - 1232 】【并查集模板题】
并查集讲解和模板 有一个博文对此分析的很透彻,附链接 为避免原链接失效,现摘录如下: 为了解释并查集的原理,我将举一个更有爱的例子. 话说江湖上散落着各式各样的大侠,有上千个之多.他们没有什么正当职业 ...
- 并查集模板——并查集(洛谷 P3367)
题目选自洛谷P3367 是并查集的最入门的题目,也是并查集的模板题~~ 如果你还不知道并查集是什么? 请看我的这篇文章 点击链接 题目描述 如题,现在有一个并查集,你需要完成合并和查询操作. 输入格式 ...
- ~~并查集模板(数据结构)(附题目AcWing 836. 合并集合)
(1)朴素并查集: int p[N]; //存储每个点的祖宗节点// 返回x的祖宗节点int find(int x){if (p[x] != x) p[x] = find(p[x]);return p ...
- (并查集模板)AcWing 模板+例题240.食物链
并查集最简单的模板 #include <bits/stdc++.h>using namespace std; int p[100010]; int n,m; int Find(int x) ...
最新文章
- python3.6运行界面_python3.6 +tkinter GUI编程 实现界面化的文本处理工具
- B站讲演 | 我为什么要做科普视频?
- ARP侦查工具Netdiscover
- golang goroutine 协程原理
- w ndows8怎么连接网络,(Wndows8.1优化设置全面解析.doc
- python方法查看_关于查看python的trace的方法
- 好程序员Web前端分享无法忽视的JavaScript技巧
- NYOJ 287 Radar 贪心之 区间选点
- hdu 4961 Boring Sum(高效)
- python中类和对象_Python里的类和对象简介
- AfxGetApp用法
- Python 创建目录文件夹
- 漫谈多模光纤类型:OM1、OM2、OM3、OM4、OM5,深度好文,值得阅读
- 使用moviepy为视频添加字幕
- 如何设置或更改代理?这些方法你知道吗?
- linux驱动-设备驱动模型
- word 绘制计算机结构图,职称计算机考试辅导:Word绘制基本图形
- word中如何制作三线表
- vcs dump vpd的方法
- 机器学习算法-KMeans聚类算法解析及伪代码实现。