JouJoy

V

Dec 12th, 2021 (edited)
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.65 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3. using namespace std;
  4.  
  5. int INF = 1001;
  6. vector<vector<int>> arr(INF, vector<int>(INF));
  7. vector<int> color(INF, 0);
  8. int n;
  9.  
  10. void f(int i) {
  11.     color[i] = 1;
  12.     for (int j = 1; j <= n; j++) {
  13.         if (color[j] == 0 && ((arr[0][i] == arr[0][j]) || (arr[1][i] == arr[1][j]))) {
  14.             f(j);
  15.         }
  16.     }
  17. }
  18.  
  19. int main() {
  20.     cin >> n;
  21.     for (int i = 1; i <= n; i++) {
  22.         cin >> arr[0][i] >> arr[1][i];
  23.     }
  24.  
  25.     int ans = -1;
  26.     for (int i = 1; i <= n; i++) {
  27.         if (color[i] == 0) {
  28.             f(i);
  29.             ans++;
  30.         }
  31.     }
  32.     cout << ans;
  33.     return 0;
  34. }
Add Comment
Please, Sign In to add comment