Pagini recente » Cod sursa (job #932008) | Cod sursa (job #2959036) | Cod sursa (job #3125357) | Cod sursa (job #1078763) | Cod sursa (job #2365822)
#include <bits/stdc++.h>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int i,t[100001],h[100001],b,c,a,n,m;
int main()
{
f>>n>>m;
for(i=1;i<=n;i++)
{
t[i]=i;
h[i]=1;
}
for(i=1;i<=m;i++)
{
f>>a>>b>>c;
if(a==1)
{
//cb=b,cc=c;
while(t[b]!=b)
b=t[b];
while(t[c]!=c)
c=t[c];
if(h[b]>=h[c])
{
t[c]=b;
h[b]=h[c]+h[b];
}
else
{
t[b]=c;
h[c]=h[c]+h[b];
}
}
else
{
while(t[b]!=b)
b=t[b];
while(t[c]!=c)
c=t[c];
if(b==c)
g<<"DA"<<'\n';
else
g<<"NU"<<'\n';
}
}
return 0;
}