Pagini recente » Borderou de evaluare (job #3199806) | Cod sursa (job #3274666) | Borderou de evaluare (job #2459677) | Cod sursa (job #423762) | Cod sursa (job #2819952)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int par[100001];
int parinte(int x)
{
if (par[x]==x) return x;
else return par[x]=parinte(par[x]);
}
int main()
{
int n,m;
fin >>n>>m;
for (int i=1;i<=n;i++) par[i]=i;
for (int i=1;i<=m;i++)
{
int x,y;
int intr;
fin >>intr;
fin >>x>>y;
if (intr==1)
{
par[x]=parinte(y);
}
else
{
if (parinte(x)==parinte(y)) fout << "DA\n";
else fout << "NU\n";
}
}
}