Pagini recente » Cod sursa (job #2939420) | Cod sursa (job #718308) | Cod sursa (job #3202177) | Cod sursa (job #768446) | Cod sursa (job #2736401)
#include <iostream>
#include <fstream>
using namespace std;
int n,m,i,t[100005],c,a,b,t1,t2;
ifstream in("disjoint.in");
ofstream out("disjoint.out");
int tata(int x)
{
if (t[x]==x) return x;
else tata(t[x]);
}
int main()
{
in>>n>>m;
for (i=1;i<=n;i++)
t[i]=i;
for (i=1;i<=m;i++)
{
in>>c;
if (c==1)
{
in>>a>>b;
t1=tata(a);
t2=tata(b);
if (t1!=t2) t[t2]=t1;
}
else
{
in>>a>>b;
t1=tata(a);
t2=tata(b);
if (t1==t2) out<<"DA"<<endl;
else out<<"NU"<<endl;
}
}
}