Submission #2077062


Source Code Expand

#include "bits/stdc++.h"
using namespace std;
vector<vector<int>> uni;
void init(int s)
{
	uni.resize(s, vector<int>(2));
	for(int i = 0; i < s; ++i)
	{
		uni[i][0] = i;
		uni[i][1] = 0;
 	}
}
int find(int x)
{
	for(int t = x; ; )
	{
		if(t == uni[t][0])
		{
			uni[x][0] = t;
			return t;
		}
		else
		{
			t = uni[t][0];
		}
	}
}
void comb(int x, int y)
{
	int px = find(x), py = find(y);
	if(px != py)
	{
		if(uni[px][1] > uni[py][1])
		{
			uni[px][0] = py;
			uni[py][1] = max(uni[py][1], uni[px][1] + 1);
		}
		else
		{
			uni[py][0] = px;
			uni[px][1] = max(uni[px][1], uni[py][1] + 1);
		}
	}
}
int main()
{
	int n, q;
	scanf("%d %d", &n, &q);
	init(n);
	for(int i = 0, p, a, b; i < q; ++i)
	{
		scanf("%d %d %d", &p, &a, &b);
		if(p)
		{
			printf(find(a) == find(b) ? "Yes\n" : "No\n");
		}
		else
		{
			comb(a, b);
		}
	}
}

Submission Info

Submission Time
Task B - Union Find
User ksi
Language C++14 (GCC 5.4.1)
Score 100
Code Size 899 Byte
Status AC
Exec Time 191 ms
Memory 6272 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:48:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d", &n, &q);
                        ^
./Main.cpp:52:32: 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 1 ms 256 KB
subtask_01_01.txt AC 34 ms 1152 KB
subtask_01_02.txt AC 8 ms 5760 KB
subtask_01_03.txt AC 44 ms 1024 KB
subtask_01_04.txt AC 72 ms 6272 KB
subtask_01_05.txt AC 4 ms 256 KB
subtask_01_06.txt AC 12 ms 5760 KB
subtask_01_07.txt AC 48 ms 896 KB
subtask_01_08.txt AC 72 ms 6272 KB
subtask_01_09.txt AC 1 ms 256 KB
subtask_01_10.txt AC 8 ms 5760 KB
subtask_01_11.txt AC 45 ms 896 KB
subtask_01_12.txt AC 76 ms 6272 KB
subtask_01_13.txt AC 41 ms 896 KB
subtask_01_14.txt AC 8 ms 5760 KB
subtask_01_15.txt AC 46 ms 896 KB
subtask_01_16.txt AC 66 ms 6272 KB
subtask_01_17.txt AC 188 ms 6016 KB
subtask_01_18.txt AC 191 ms 6016 KB