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 ;
    }
  }
}
目录
相关文章
|
2月前
lanqiao OJ 22年省赛 扫雷
lanqiao OJ 22年省赛 扫雷
32 1
|
2月前
lanqiao OJ 1505 剪邮票
lanqiao OJ 1505 剪邮票
30 0
|
2月前
lanqiao OJ 182 小朋友崇拜圈
lanqiao OJ 182 小朋友崇拜圈
31 2
|
2月前
lanqiao oj 1121 蓝桥公园(floyd)
lanqiao oj 1121 蓝桥公园(floyd)
44 0
|
2月前
lanqiao oj 17136 星球(状态压缩dp)
lanqiao oj 17136 星球(状态压缩dp)
13 0
|
2月前
|
BI
lanqiao OJ 蜗牛
lanqiao OJ 蜗牛
22 0
|
2月前
lanqiao OJ 2097 青蛙过河
lanqiao OJ 2097 青蛙过河
15 0
|
2月前
lanqiao OJ 234 大胖子走迷宫
lanqiao OJ 234 大胖子走迷宫
11 0
|
2月前
lanqiao OJ 102 青蛙跳杯子
lanqiao OJ 102 青蛙跳杯子
28 0
|
人工智能 BI
《蓝桥杯每日一题》并查集·AcWing1249. 亲戚
《蓝桥杯每日一题》并查集·AcWing1249. 亲戚
58 0