Pagini recente » Cod sursa (job #1119789) | Cod sursa (job #2821192) | Cod sursa (job #2199414) | Cod sursa (job #1207131) | Cod sursa (job #1246101)
#include<fstream>
#include<cstdio>
using namespace std;
//ifstream in("disjoint.in");
//ofstream out("disjoint.out");
const int nmax = 100006;
int radacina[nmax], n, m, cod, x, y, radx, rady, aux;
int main(){
int player_unu=0;
freopen("disjoint.in", "r", stdin);
freopen("disjoint.out", "w", stdout);
scanf("%d%d", &n, &m);
for(int shp = 0; shp<m; shp++)
{
scanf("%d%d%d", &cod, &x, &y);
if(cod==1)
{
//radacina[x] = y;
//obtinem radacinile
radx = x;
while(radacina[radx]!=0)
{
radx = radacina[radx];
}
aux = x;
while(radacina[aux]!=0)
{
radacina[aux] = radx;
aux = radacina[aux];
}
rady = y;
while(radacina[rady]!=0)
{
rady = radacina[rady];
}
aux = y;
while(radacina[aux]!=0)
{
radacina[aux] = rady;
aux = radacina[aux];
}
radacina[radx] = rady;
}
if(cod==2)
{
rady = y;
while(radacina[rady]!=0)
{
rady = radacina[rady];
}
radx = x;
while(radacina[radx]!=0)
{
radx = radacina[radx];
}
if(radx==rady)
{
printf("DA\n");
}
else
{
printf("NU\n");
}
}
}
return player_unu;
}