P3367 【模板】并查集
1 #include<iostream> 2 using namespace std; 3 int b[10010]; 4 5 int find(int n) 6 { 7 if (b[n] == n) return n; 8 return b[n] = find(b[n]); 9 } 10 int main() 11 { 12 int n, m; 13 cin >> n >> m; 14 for (int i = 1; i <= n; i++) b[i] = i; 15 int p1, p2, p3; 16 for (int i = 1; i <= m; i++) 17 { 18 cin >> p1 >> p2 >> p3; 19 if (p1 == 1) b[find(p2)] = find(p3); 20 else if (find(p2) == find(p3)) cout << "Y" << endl; 21 else cout << "N" << endl; 22 } 23 }
浙公网安备 33010602011771号