Pagini recente » Cod sursa (job #604853) | Profil thanhvy | Istoria paginii runda/cnitv_baraj_2 | Cod sursa (job #796890) | Cod sursa (job #2003529)
#include <fstream>
#define DIM 100001
using namespace std;
ifstream fi("disjoint.in");
ofstream fo("disjoint.out");
int n,m;
int P[DIM];
int radacina(int a)
{
if(P[a]==0)
return a;
P[a]=radacina(P[a]);
return P[a];
}
void reuniune(int a,int b)
{
P[radacina(b)]=radacina(a);
}
bool query(int a,int b)
{
return (radacina(a)==radacina(b));
}
int main()
{
fi>>n>>m;
for(int i=1;i<=m;i++)
{
int t,a,b;
fi>>t>>a>>b;
if(t==1)
reuniune(a,b);
else
{
bool ok=query(a,b);
if(ok)
fo<<"DA\n";
else
fo<<"NU\n";
}
/*
for(int i=1;i<=n;i++)
fo<<P[i]<<" ";
fo<<"\n";
*/
}
fi.close();
fo.close();
return 0;
}