Pagini recente » Cod sursa (job #1496945) | Cod sursa (job #1832092) | Cod sursa (job #2221233) | Cod sursa (job #587531) | Cod sursa (job #286799)
Cod sursa(job #286799)
#include<fstream.h>
int v[100010],urm[100010],ult[100010],n,m,i,x,y,operatie,j;
int main()
{
ifstream f("disjoint.in");
ofstream g("disjoint.out");
f>>n>>m;
for(i=1;i<=n;i++) ult[i]=v[i]=i;
for(i=1;i<=m;i++)
{ f>>operatie>>x>>y;
if(operatie==1)
{ if(v[x]<v[y]) { urm[ult[x]]=y;
ult[x]=ult[y];
v[y]=v[x];
for(j=urm[y];j; j=urm[j])
v[j]=v[x];
}
else if(v[x]>v[y])
{ urm[ult[y]]=x;
ult[y]=ult[x];
v[x]=v[y];
for(j=urm[x];j; j=urm[j])
v[j]=v[y];
}
}
else if(v[x]==v[y]) g<<"DA"<<'\n';
else g<<"NU"<<'\n';
}
f.close();
g.close();
return 0;
}