Submission #1016312


Source Code Expand

#include<bits/stdc++.h>
#include<vector>
#include<list>
#include<stack>
#include<queue>
#include<algorithm>
using namespace std;

/**
 * vector<int>ar(3);
 * for(auto&e:ar){
 *     scanf("%d",&e);
 * }
 * sort(ar.begin(),ar.end())
 * int sum=accumulate(ar.begin(),ar.end(),0);
 **/

struct UnionFind {
    vector<int> data;
    UnionFind(int size) : data(size, -1) {}
    bool unite(int x, int y) {
        x=root(x), y=root(y);
        if (x!=y) {
            if (data[y]<data[x]) {
                swap(x, y);
            }
            data[x]+=data[y], data[y]=x;
        }
        return x!=y;
    }

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

    int root(int x) {
        return data[x]<0 ? x : data[x]=root(data[x]);
    }

    int size(int x) {
        return -data[root(x)];
    }
};


int main(){
    int mod=1000000007;
    int n,q;
    scanf("%d %d",&n,&q);
    UnionFind uf(n);
    for (int i=0;i<q;i++) {
        int p,a,b;
        scanf("%d %d %d",&p,&a,&b);
        if (p!=0) printf (uf.find(a,b) ? "Yes\n" : "No\n");
        else uf.unite(a,b);
    }
    return 0;
}

Submission Info

Submission Time
Task B - Union Find
User nyon
Language C++11 (GCC 4.9.2)
Score 100
Code Size 1167 Byte
Status AC
Exec Time 129 ms
Memory 1312 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:49:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d",&n,&q);
                         ^
./Main.cpp:53:35: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d %d %d",&p,&a,&b);
                                   ^

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 16 ms 800 KB
subtask_01_01.txt AC 79 ms 924 KB
subtask_01_02.txt AC 19 ms 1184 KB
subtask_01_03.txt AC 119 ms 924 KB
subtask_01_04.txt AC 127 ms 1184 KB
subtask_01_05.txt AC 23 ms 800 KB
subtask_01_06.txt AC 25 ms 1304 KB
subtask_01_07.txt AC 123 ms 796 KB
subtask_01_08.txt AC 129 ms 1184 KB
subtask_01_09.txt AC 17 ms 928 KB
subtask_01_10.txt AC 18 ms 1300 KB
subtask_01_11.txt AC 118 ms 924 KB
subtask_01_12.txt AC 126 ms 1180 KB
subtask_01_13.txt AC 101 ms 920 KB
subtask_01_14.txt AC 19 ms 1308 KB
subtask_01_15.txt AC 123 ms 924 KB
subtask_01_16.txt AC 127 ms 1184 KB
subtask_01_17.txt AC 101 ms 1308 KB
subtask_01_18.txt AC 100 ms 1312 KB