lanqiao oj 1135 蓝桥幼儿园(并查集)

简介: lanqiao oj 1135 蓝桥幼儿园(并查集)

用户登录

#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
 
using namespace std ;
 
const int N = 8e5 +10 ; 
int s[N] ;
int n , m;
int find(int x){//压缩路径,找祖宗结点
  if(x!=s[x]) s[x] = find(s[x]) ;
  return s[x] ;
}
int main(){
  cin >> n >> m ;
  for(int i = 1 ; i <= n ;i ++) s[i] = i ;
  for(int i = 1 ; i <= m ; i ++){
    int o , a , b ;
    cin >> o >> a >> b ;
    if(o == 1){//并查集的合并,找a 和 b 的祖宗节点,如果两个祖宗不一样,那就让其中一个的祖宗变成了另一个的祖宗的祖宗
      int x = find(a) , y = find(b) ;
      if(x!=y) s[x] = y ;
    }
    if(o == 2){
      if(find(a) == find(b)) cout << "YES" <<endl ;
      else cout << "NO" << endl ;
    }
  }
}
目录
相关文章
|
1月前
lanqiao OJ 22年省赛 扫雷
lanqiao OJ 22年省赛 扫雷
30 1
|
1月前
lanqiao OJ 1505 剪邮票
lanqiao OJ 1505 剪邮票
27 0
|
1月前
lanqiao OJ 364 跳石头
lanqiao OJ 364 跳石头
34 6
|
1月前
lanqiao OJ 525 传球游戏
lanqiao OJ 525 传球游戏
28 2
|
1月前
lanqiao oj 17136 星球(状态压缩dp)
lanqiao oj 17136 星球(状态压缩dp)
9 0
|
1月前
lanqiao oj 1121 蓝桥公园(floyd)
lanqiao oj 1121 蓝桥公园(floyd)
41 0
|
1月前
lanqiao oj 1122 蓝桥王国
lanqiao oj 1122 蓝桥王国
16 0
|
1月前
|
BI
lanqiao OJ 蜗牛
lanqiao OJ 蜗牛
18 0
|
1月前
lanqiao OJ 健身
lanqiao OJ 健身
12 0
|
1月前
lanqiao OJ 234 大胖子走迷宫
lanqiao OJ 234 大胖子走迷宫
11 0