Submission #574145


Source Code Expand

import std.stdio, std.range, std.array;

int find(int n, int[] parents){
    return parents[n] == n ? n : (parents[n] = find(parents[n], parents));
}

void main(){
    int N, Q;
    readf("%d %d\n", &N, &Q);
    
    auto uf = 0.iota(N).array;
    
    foreach(i; 0..Q){
        int P, A, B;
        readf("%d %d %d\n", &P, &A, &B);
        
        if(P == 0){
            uf[A] = find(B, uf);
        }
        else{
            if(find(A, uf) == find(B, uf)) "Yes".writeln;
            else "No".writeln;
        }
    }
}

Submission Info

Submission Time
Task B - Union Find
User blst_yg
Language D (DMD 2.066.1)
Score 100
Code Size 549 Byte
Status AC
Exec Time 380 ms
Memory 1304 KiB

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 27 ms 916 KiB
subtask_01_01.txt AC 221 ms 800 KiB
subtask_01_02.txt AC 27 ms 1180 KiB
subtask_01_03.txt AC 281 ms 932 KiB
subtask_01_04.txt AC 374 ms 1188 KiB
subtask_01_05.txt AC 45 ms 920 KiB
subtask_01_06.txt AC 52 ms 1300 KiB
subtask_01_07.txt AC 317 ms 928 KiB
subtask_01_08.txt AC 377 ms 1296 KiB
subtask_01_09.txt AC 25 ms 804 KiB
subtask_01_10.txt AC 27 ms 1188 KiB
subtask_01_11.txt AC 273 ms 844 KiB
subtask_01_12.txt AC 380 ms 1304 KiB
subtask_01_13.txt AC 279 ms 920 KiB
subtask_01_14.txt AC 28 ms 1172 KiB
subtask_01_15.txt AC 296 ms 744 KiB
subtask_01_16.txt AC 374 ms 1108 KiB
subtask_01_17.txt AC 377 ms 1184 KiB
subtask_01_18.txt AC 365 ms 1108 KiB