Submission #2518981
Source Code Expand
#include <bits/stdc++.h> #define rep(i,n)for(int i=0;i<(n);i++) using namespace std; class UnionFind { vector<int>par, sz; public: UnionFind() {} UnionFind(int n) { par = sz = vector<int>(n); for (int i = 0; i < n; i++) { par[i] = i; sz[i] = 1; } } int find(int x) { if (par[x] == x)return x; return par[x] = find(par[x]); } void unite(int x, int y) { x = find(x); y = find(y); if (x == y)return; if (sz[x] > sz[y]) { par[y] = x; sz[x] += sz[y]; } else { par[x] = y; sz[y] += sz[x]; } } bool same(int x, int y) { return find(x) == find(y); } int size(int x) { return sz[find(x)]; } }; int main(){ int n,q;scanf("%d%d",&n,&q); UnionFind uf(2*n); rep(i,q){ int w,x,y,z;scanf("%d%d%d%d",&w,&x,&y,&z);x--;y--; if(w==1){ if(z%2==0){ uf.unite(x,y); uf.unite(x+n,y+n); } else{ uf.unite(x,y+n); uf.unite(x+n,y); } } else{ puts(uf.same(x,y)?"YES":"NO"); } } }
Submission Info
Submission Time | |
---|---|
Task | D - 偶数メートル |
User | autumn_eel |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1010 Byte |
Status | AC |
Exec Time | 36 ms |
Memory | 1920 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:40:29: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] int n,q;scanf("%d%d",&n,&q); ^ ./Main.cpp:43:44: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] int w,x,y,z;scanf("%d%d%d%d",&w,&x,&y,&z);x--;y--; ^
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 30 / 30 | 70 / 70 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
Subtask1 | sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt |
Subtask2 | sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt, subtask2_29.txt, subtask2_30.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 2 ms | 256 KB |
subtask1_02.txt | AC | 2 ms | 256 KB |
subtask1_03.txt | AC | 2 ms | 256 KB |
subtask1_04.txt | AC | 2 ms | 256 KB |
subtask1_05.txt | AC | 2 ms | 256 KB |
subtask1_06.txt | AC | 2 ms | 256 KB |
subtask1_07.txt | AC | 2 ms | 256 KB |
subtask1_08.txt | AC | 2 ms | 256 KB |
subtask1_09.txt | AC | 2 ms | 256 KB |
subtask1_10.txt | AC | 2 ms | 256 KB |
subtask1_11.txt | AC | 2 ms | 256 KB |
subtask1_12.txt | AC | 2 ms | 256 KB |
subtask1_13.txt | AC | 2 ms | 256 KB |
subtask1_14.txt | AC | 2 ms | 256 KB |
subtask1_15.txt | AC | 2 ms | 256 KB |
subtask1_16.txt | AC | 2 ms | 256 KB |
subtask1_17.txt | AC | 2 ms | 256 KB |
subtask1_18.txt | AC | 2 ms | 256 KB |
subtask1_19.txt | AC | 2 ms | 256 KB |
subtask1_20.txt | AC | 2 ms | 256 KB |
subtask1_21.txt | AC | 2 ms | 256 KB |
subtask1_22.txt | AC | 2 ms | 256 KB |
subtask1_23.txt | AC | 2 ms | 256 KB |
subtask1_24.txt | AC | 2 ms | 256 KB |
subtask1_25.txt | AC | 2 ms | 256 KB |
subtask1_26.txt | AC | 2 ms | 256 KB |
subtask1_27.txt | AC | 2 ms | 256 KB |
subtask1_28.txt | AC | 2 ms | 256 KB |
subtask1_29.txt | AC | 2 ms | 256 KB |
subtask2_01.txt | AC | 13 ms | 640 KB |
subtask2_02.txt | AC | 29 ms | 1792 KB |
subtask2_03.txt | AC | 3 ms | 768 KB |
subtask2_04.txt | AC | 28 ms | 1280 KB |
subtask2_05.txt | AC | 13 ms | 1792 KB |
subtask2_06.txt | AC | 14 ms | 1408 KB |
subtask2_07.txt | AC | 27 ms | 1792 KB |
subtask2_08.txt | AC | 30 ms | 1536 KB |
subtask2_09.txt | AC | 19 ms | 896 KB |
subtask2_10.txt | AC | 35 ms | 1920 KB |
subtask2_11.txt | AC | 35 ms | 1920 KB |
subtask2_12.txt | AC | 35 ms | 1920 KB |
subtask2_13.txt | AC | 35 ms | 1920 KB |
subtask2_14.txt | AC | 35 ms | 1920 KB |
subtask2_15.txt | AC | 35 ms | 1920 KB |
subtask2_16.txt | AC | 34 ms | 1920 KB |
subtask2_17.txt | AC | 34 ms | 1920 KB |
subtask2_18.txt | AC | 35 ms | 1920 KB |
subtask2_19.txt | AC | 35 ms | 1920 KB |
subtask2_20.txt | AC | 35 ms | 1920 KB |
subtask2_21.txt | AC | 36 ms | 1792 KB |
subtask2_22.txt | AC | 36 ms | 1792 KB |
subtask2_23.txt | AC | 36 ms | 1792 KB |
subtask2_24.txt | AC | 36 ms | 1792 KB |
subtask2_25.txt | AC | 36 ms | 1792 KB |
subtask2_26.txt | AC | 36 ms | 1792 KB |
subtask2_27.txt | AC | 36 ms | 1792 KB |
subtask2_28.txt | AC | 36 ms | 1792 KB |
subtask2_29.txt | AC | 36 ms | 1792 KB |
subtask2_30.txt | AC | 31 ms | 1152 KB |