Submission #420231
Source Code Expand
#include <bits/stdc++.h> #define REP(i,n) for(int i=0;i<(int)(n);i++) #define ALL(x) (x).begin(),(x).end() using namespace std; struct UnionFind { vector<int> parent; UnionFind (int n) : parent(n, -1) {} int root(int x) { return parent[x] < 0 ? x : parent[x] = root(parent[x]); } bool merge(int x, int y) { x = root(x); y = root(y); if (x == y) return false; if (parent[y] < parent[x]) swap(x, y); if (parent[x] == parent[y]) --parent[x]; parent[y] = x; return true; } }; int main() { int N, Q; cin >> N >> Q; UnionFind uf(N); REP(i,Q) { int p, a, b; cin >> p >> a >> b; if (p == 0) uf.merge(a, b); else { int x = uf.root(a), y = uf.root(b); cout << (x == y ? "Yes" : "No") << endl; } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | B - Union Find |
User | asi1024 |
Language | C++11 (GCC 4.9.2) |
Score | 100 |
Code Size | 817 Byte |
Status | AC |
Exec Time | 929 ms |
Memory | 1308 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
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 | 808 KB |
subtask_01_01.txt | AC | 513 ms | 928 KB |
subtask_01_02.txt | AC | 25 ms | 1308 KB |
subtask_01_03.txt | AC | 720 ms | 804 KB |
subtask_01_04.txt | AC | 869 ms | 1136 KB |
subtask_01_05.txt | AC | 71 ms | 808 KB |
subtask_01_06.txt | AC | 74 ms | 1304 KB |
subtask_01_07.txt | AC | 769 ms | 808 KB |
subtask_01_08.txt | AC | 929 ms | 1180 KB |
subtask_01_09.txt | AC | 24 ms | 924 KB |
subtask_01_10.txt | AC | 24 ms | 1128 KB |
subtask_01_11.txt | AC | 707 ms | 924 KB |
subtask_01_12.txt | AC | 856 ms | 1304 KB |
subtask_01_13.txt | AC | 632 ms | 796 KB |
subtask_01_14.txt | AC | 29 ms | 1188 KB |
subtask_01_15.txt | AC | 746 ms | 924 KB |
subtask_01_16.txt | AC | 844 ms | 1244 KB |
subtask_01_17.txt | AC | 627 ms | 1188 KB |
subtask_01_18.txt | AC | 639 ms | 1308 KB |