Submission #420858


Source Code Expand

#include <vector>
class UnionFind {
private:
  std::vector<int> disj;
public:
  UnionFind(int n) : disj(n) {
    for (int i = 0; i < n; ++i) {
      disj[i] = i;
    }
  }
  int root(int x) {
    if (disj[x] == x) {
      return x;
    }
    return disj[x] = root(disj[x]);
  }
  void unite(int x, int y) {
    disj[root(x)] = root(y);
  }
  bool is_same_set(int x, int y) {
    return root(x) == root(y);
  }
};

#include <iostream>

#define REP(i,s,n) for(int i=(int)(s);i<(int)(n);i++)

using namespace std;
typedef long long int ll;
typedef vector<int> VI;
typedef pair<int, int> PI;
const double EPS=1e-9;

int main(void){
  int n, q;
  cin >> n >> q;
  UnionFind uf(n);
  REP(loop_v, 0, q) {
    int p, a, b;
    cin >> p >> a >> b;
    if (p) {
      cout << (uf.is_same_set(a, b) ? "Yes" : "No") << endl;
    } else {
      uf.unite(a, b);
    }
  }
}

Submission Info

Submission Time
Task B - Union Find
User kobae964
Language C++ (GCC 4.9.2)
Score 100
Code Size 908 Byte
Status AC
Exec Time 968 ms
Memory 1308 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 1
AC × 19
Set Name Test Cases
Sample 00_sample_01.txt
All 00_sample_01.txt, subtask_01_01.txt, subtask_01_02.txt, subtask_01_03.txt, subtask_01_04.txt, subtask_01_05.txt, subtask_01_06.txt, subtask_01_07.txt, subtask_01_08.txt, subtask_01_09.txt, subtask_01_10.txt, subtask_01_11.txt, subtask_01_12.txt, subtask_01_13.txt, subtask_01_14.txt, subtask_01_15.txt, subtask_01_16.txt, subtask_01_17.txt, subtask_01_18.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 26 ms 748 KB
subtask_01_01.txt AC 549 ms 804 KB
subtask_01_02.txt AC 26 ms 1304 KB
subtask_01_03.txt AC 727 ms 804 KB
subtask_01_04.txt AC 853 ms 1188 KB
subtask_01_05.txt AC 77 ms 924 KB
subtask_01_06.txt AC 77 ms 1184 KB
subtask_01_07.txt AC 894 ms 804 KB
subtask_01_08.txt AC 924 ms 1304 KB
subtask_01_09.txt AC 26 ms 800 KB
subtask_01_10.txt AC 28 ms 1184 KB
subtask_01_11.txt AC 829 ms 924 KB
subtask_01_12.txt AC 968 ms 1176 KB
subtask_01_13.txt AC 669 ms 928 KB
subtask_01_14.txt AC 29 ms 1176 KB
subtask_01_15.txt AC 746 ms 920 KB
subtask_01_16.txt AC 844 ms 1196 KB
subtask_01_17.txt AC 642 ms 1308 KB
subtask_01_18.txt AC 610 ms 1304 KB