LA 3644 易爆物
Posted 谦谦君子,陌上其华
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LA 3644 易爆物相关的知识,希望对你有一定的参考价值。
https://vjudge.net/problem/UVALive-3644
简单的并查集题目。
1 #include<iostream> 2 using namespace std; 3 4 const int maxn = 100000 + 5; 5 6 int p[maxn]; 7 8 int find(int x) 9 { 10 return p[x] != x ? p[x] = (find(p[x])) : x; 11 } 12 13 int main() 14 { 15 //freopen("D:\\txt.txt", "r", stdin); 16 int x, y; 17 while (cin >> x && x != -1) 18 { 19 for (int i = 0; i < maxn; i++) 20 p[i] = i; 21 int cnt = 0; 22 while (x != -1) 23 { 24 cin >> y; 25 x = find(x); 26 y = find(y); 27 if (x == y) cnt++; 28 else p[x] = y; 29 cin >> x; 30 } 31 cout << cnt << endl; 32 } 33 }
以上是关于LA 3644 易爆物的主要内容,如果未能解决你的问题,请参考以下文章
A - X-Plosives (UVALive - 3644)