Pagini recente » Cod sursa (job #1093154) | Cod sursa (job #896624) | Cod sursa (job #2595012) | Cod sursa (job #2314728) | Cod sursa (job #1496257)
#include<fstream>
#define elemax 100002
using namespace std;
int rad[elemax];
bool query(int a,int b)
{
int t1,t2;
t1=rad[a];
while(t1!=rad[t1])
t1=rad[t1];
t2=rad[b];
while(t2!=rad[t2])
t2=rad[t2];
return (t1==t2);
}
int main()
{
ifstream si;
si.open("disjoint.in");
ofstream so;
so.open("disjoint.out");
int n,m;
si>>n>>m;
int a,b,c,i;
for(i=1;i<=n;++i)
{
rad[i]=i;
}
for(i=0;i<m;++i)
{
si>>a>>b>>c;
if(a==1)
rad[c]=rad[b];
else
{
if(query(b,c))
so<<"DA"<<'\n';
else
so<<"NU"<<'\n';
}
}
si.close();
so.close();
return 0;
}