Submission #4084247
Source Code Expand
#include "bits/stdc++.h"
using namespace std;
struct unionfind
{
vector<int> par, rank;
unionfind(int n) : par(n), rank(n, 1)
{
for (int i = 0; i < n; i++)
{
par[i] = i;
}
}
bool same(int u, int v)
{
return root(u) == root(v);
}
void unite(int u, int v)
{
if (same(u, v)) return ;
u = root(u), v = root(v);
if (rank[u] > rank[v]) swap(u, v);
par[u] = v;
rank[v] += rank[u];
}
int root(int v)
{
if (par[v] == v) return v;
return par[v] = root(par[v]);
}
};
void solve()
{
int N, Q;
cin >> N >> Q;
unionfind uf(N);
while (Q--)
{
int p, a, b;
scanf("%d%d%d", &p, &a, &b);
if (p)
{
printf("%s\n", uf.same(a, b) ? "Yes" : "No");
}
else
{
uf.unite(a, b);
}
}
}
int main(void)
{
solve();
//cout << "yui(*-v・)yui" << endl;
return 0;
}
Submission Info
Submission Time
2019-01-25 19:47:42+0900
Task
B - Union Find
User
sifi_border
Language
C++14 (GCC 5.4.1)
Score
100
Code Size
867 Byte
Status
AC
Exec Time
58 ms
Memory
1792 KB
Compile Error
./Main.cpp: In function ‘void solve()’:
./Main.cpp:45:30: 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
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
29 ms
640 KB
subtask_01_02.txt
AC
2 ms
1024 KB
subtask_01_03.txt
AC
41 ms
1024 KB
subtask_01_04.txt
AC
58 ms
1792 KB
subtask_01_05.txt
AC
4 ms
256 KB
subtask_01_06.txt
AC
5 ms
1024 KB
subtask_01_07.txt
AC
45 ms
768 KB
subtask_01_08.txt
AC
50 ms
1664 KB
subtask_01_09.txt
AC
1 ms
256 KB
subtask_01_10.txt
AC
2 ms
1024 KB
subtask_01_11.txt
AC
41 ms
896 KB
subtask_01_12.txt
AC
50 ms
1664 KB
subtask_01_13.txt
AC
37 ms
768 KB
subtask_01_14.txt
AC
2 ms
1024 KB
subtask_01_15.txt
AC
42 ms
768 KB
subtask_01_16.txt
AC
50 ms
1664 KB
subtask_01_17.txt
AC
48 ms
1408 KB
subtask_01_18.txt
AC
50 ms
1408 KB