Submission #757983


Source Code Expand

#include <iostream>
using namespace std;

const int MAX_N = 100000;
const int MAX_Q = 200000;
int parent[MAX_N] = {};
int treeRank[MAX_N] = {};
int P = 0, A = 0, B = 0;
string answer[MAX_Q] = {};
int numOfjudge = 0;

void init(int n){
    for(int i = 0; i < n; i++){
        parent[i] = i;
        treeRank[i] = 0;
    }
}

int root(int x){
    return parent[x] == x ? x : parent[x] = root(parent[x]);
}

bool isSame(int x, int y){
    return root(x) == root(y);
}

void unit(int x, int y){
    x = root(x);
    y = root(y);
    if(x == y) return;
    
    if(treeRank[x] < treeRank[y]){
        parent[x] = y;
    }
    else{
        parent[y] = x;
        if(treeRank[x] == treeRank[y]) treeRank[x]++;
    }
}

int main(){
    int N, Q;
    cin >> N >> Q;
    init(N);
    for(int i = 0; i < Q; i++){
        cin >> P >> A >> B;
        if(P == 0) unit(A, B);
        else{
            answer[numOfjudge++] = isSame(A, B) ? "Yes" : "No";
        }
    }
    for(int i = 0; i < numOfjudge; i++){
        cout << answer[i] << endl;
    }
}

Submission Info

Submission Time
Task B - Union Find
User mizutoki_
Language C++ (GCC 4.9.2)
Score 100
Code Size 1095 Byte
Status AC
Exec Time 927 ms
Memory 12748 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 43 ms 2564 KB
subtask_01_01.txt AC 456 ms 8328 KB
subtask_01_02.txt AC 35 ms 3344 KB
subtask_01_03.txt AC 677 ms 12024 KB
subtask_01_04.txt AC 927 ms 12724 KB
subtask_01_05.txt AC 68 ms 3128 KB
subtask_01_06.txt AC 73 ms 3788 KB
subtask_01_07.txt AC 713 ms 11980 KB
subtask_01_08.txt AC 773 ms 12720 KB
subtask_01_09.txt AC 33 ms 2616 KB
subtask_01_10.txt AC 34 ms 3520 KB
subtask_01_11.txt AC 672 ms 12028 KB
subtask_01_12.txt AC 759 ms 12732 KB
subtask_01_13.txt AC 611 ms 10036 KB
subtask_01_14.txt AC 35 ms 3408 KB
subtask_01_15.txt AC 693 ms 11980 KB
subtask_01_16.txt AC 846 ms 12748 KB
subtask_01_17.txt AC 527 ms 8052 KB
subtask_01_18.txt AC 529 ms 8112 KB