Pagini recente » Cod sursa (job #2231635) | Cod sursa (job #3248318) | Cod sursa (job #2199) | Cod sursa (job #820582) | Cod sursa (job #2227082)
#include <bits/stdc++.h>
#define fisiere 1
using namespace std;
/**************************************
*completeaza numele fisiereleor aici *
**************************************/
const string NUME_PROGRAM="disjoint";
#if fisiere==1
ifstream f(NUME_PROGRAM+".in");
ofstream g(NUME_PROGRAM+".out");
#endif // fisiere
const int N = 100010;
int n,m,i,x,y,cod,rx,ry,t[N],radacina(int);
int main()
{
f>>n>>m;
for(i=1;i<=n;i++)
t[i]=i;
for(;m;m--)
{
f>>cod>>x>>y;
rx=radacina(x);
ry=radacina(y);
if(cod==1)
t[rx]=ry;
else
{
if(rx==ry)
g<<"DA\n";
else
g<<"NU\n";
}
}
return 0;
}
int radacina(int x)
{
if(t[x]==x)
return x;
t[x]=radacina(t[x]);
return t[x];
}