Pagini recente » Cod sursa (job #2675322) | Cod sursa (job #1976005) | Cod sursa (job #2408376) | Cod sursa (job #3136495) | Cod sursa (job #1231874)
#include <fstream>
using namespace std;
int T[100005], H[100005];
int get_root(int x)
{
while( T[x] ) x = T[x];
return x;
}
int main()
{
ifstream inFile("disjoint.in");
ofstream outFile("disjoint.out");
int N, M;
inFile >> N >> M;
int cod, x, y;
while(M--){
inFile >> cod >> x >> y;
int rx = get_root(x);
int ry = get_root(y);
if( cod == 1 ){
if( H[rx] == H[ry] ){ T[ry] = rx; H[rx]++; }
if( H[rx] > H[ry] ){ T[ry] = rx; }
if( H[ry] > H[rx] ){ T[rx] = ry; }
}else{
if(rx == ry) outFile << "DA\n";
else outFile << "NU\n";
}
}
}