Submission #2819277


Source Code Expand

#include <iostream>

using namespace std;

int n, q;
int par[200001];
int r[200001];

int find(int x){
		if(par[x] == x)return x;
		else return par[x] = find(par[x]);
}

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

void unite(int x, int y){
		int xp = find(x);
		int yp = find(y);
		if(xp == yp)return;
		if(r[xp] > r[yp]){
				par[yp] = xp;
		}else{
				par[xp] = yp;
				if(r[xp] == r[yp])r[yp]++;
		}
}

void init(){
		for(int i = 0; i < 2*n; i++){
				par[i] = i;
		}
}

int main(int argc, char const* argv[])
{
	cin >> n >> q;
	init();
	for(int i = 0; i < q; i++){
			int w, x, y, z;
			cin >> w >> x >> y >> z;
			if(w == 2){
					if(same(x-1, y-1))cout << "YES" << endl;
					else cout << "NO" << endl;
			}else{
					if(z % 2 == 0){
							unite(x-1, y-1);
							unite(x-1+n, y-1+n);
					}else{
							unite(x-1, y-1+n);
							unite(x-1+n, y-1);
					}
			}
	}
	return 0;
}

Submission Info

Submission Time
Task D - 偶数メートル
User fumiphys
Language C++14 (GCC 5.4.1)
Score 100
Code Size 954 Byte
Status AC
Exec Time 209 ms
Memory 1920 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 3
AC × 32
AC × 62
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 4 ms 256 KB
subtask1_02.txt AC 4 ms 256 KB
subtask1_03.txt AC 6 ms 256 KB
subtask1_04.txt AC 4 ms 256 KB
subtask1_05.txt AC 4 ms 256 KB
subtask1_06.txt AC 4 ms 256 KB
subtask1_07.txt AC 4 ms 256 KB
subtask1_08.txt AC 5 ms 256 KB
subtask1_09.txt AC 6 ms 256 KB
subtask1_10.txt AC 7 ms 256 KB
subtask1_11.txt AC 7 ms 256 KB
subtask1_12.txt AC 7 ms 256 KB
subtask1_13.txt AC 7 ms 256 KB
subtask1_14.txt AC 7 ms 256 KB
subtask1_15.txt AC 7 ms 256 KB
subtask1_16.txt AC 7 ms 256 KB
subtask1_17.txt AC 7 ms 256 KB
subtask1_18.txt AC 7 ms 256 KB
subtask1_19.txt AC 7 ms 256 KB
subtask1_20.txt AC 7 ms 256 KB
subtask1_21.txt AC 7 ms 256 KB
subtask1_22.txt AC 7 ms 256 KB
subtask1_23.txt AC 7 ms 256 KB
subtask1_24.txt AC 7 ms 256 KB
subtask1_25.txt AC 7 ms 256 KB
subtask1_26.txt AC 7 ms 256 KB
subtask1_27.txt AC 7 ms 256 KB
subtask1_28.txt AC 7 ms 256 KB
subtask1_29.txt AC 7 ms 256 KB
subtask2_01.txt AC 71 ms 640 KB
subtask2_02.txt AC 170 ms 1792 KB
subtask2_03.txt AC 12 ms 768 KB
subtask2_04.txt AC 162 ms 1280 KB
subtask2_05.txt AC 73 ms 1792 KB
subtask2_06.txt AC 77 ms 1408 KB
subtask2_07.txt AC 154 ms 1920 KB
subtask2_08.txt AC 172 ms 1536 KB
subtask2_09.txt AC 109 ms 896 KB
subtask2_10.txt AC 199 ms 1920 KB
subtask2_11.txt AC 200 ms 1920 KB
subtask2_12.txt AC 209 ms 1920 KB
subtask2_13.txt AC 200 ms 1920 KB
subtask2_14.txt AC 204 ms 1920 KB
subtask2_15.txt AC 199 ms 1920 KB
subtask2_16.txt AC 205 ms 1920 KB
subtask2_17.txt AC 199 ms 1920 KB
subtask2_18.txt AC 200 ms 1920 KB
subtask2_19.txt AC 199 ms 1920 KB
subtask2_20.txt AC 200 ms 1920 KB
subtask2_21.txt AC 128 ms 1792 KB
subtask2_22.txt AC 130 ms 1792 KB
subtask2_23.txt AC 130 ms 1792 KB
subtask2_24.txt AC 130 ms 1792 KB
subtask2_25.txt AC 131 ms 1792 KB
subtask2_26.txt AC 128 ms 1792 KB
subtask2_27.txt AC 130 ms 1792 KB
subtask2_28.txt AC 128 ms 1792 KB
subtask2_29.txt AC 130 ms 1792 KB
subtask2_30.txt AC 192 ms 768 KB