Pagini recente » Cod sursa (job #601876) | Cod sursa (job #2142259) | Cod sursa (job #1526846) | Cod sursa (job #770656) | Cod sursa (job #2142241)
#include <cstdio>
int parent[100001];
inline int Find(int x)
{
while(parent[x] != x)
{
x = parent[x];
}
return x;
}
int main()
{
int sets, queries, task, x, y;
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
scanf("%d %d", &sets, &queries);
for(int i = 1; i <= sets; i++)
{
parent[i] = i;
}
for(int i = 1; i <= queries; i++)
{
scanf("%d %d %d", &task, &x, &y);
if(task == 1)
{
parent[Find(y)] = Find(x);
}
else
{
printf("%s\n", (Find(x) == Find(y)) ? "DA" : "NU");
}
}
return 0;
}