Pagini recente » Cod sursa (job #2294288) | Cod sursa (job #2554939) | Cod sursa (job #2299091) | Cod sursa (job #1579741) | Cod sursa (job #967716)
Cod sursa(job #967716)
#include <iostream>
#include <fstream>
#include <cmath>
#include <vector>
#include <bitset>
#include <queue>
#include <deque>
#include <list>
#include <set>
#include <ctime>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
ifstream ff("disjoint.in");
ofstream gg("disjoint.out");
#define max 100001
int n, m, rr[max];
int rad(int a){
if(rr[a]==a) return a; else {
rr[a]=rad(rr[a]);
return rr[a];
}
}
int main(){
int o, a, b;
ff >> n >> m;
for(int i=1;i<=n;i++) rr[i] = i;
for(int i=0;i<m;i++){
ff >> o >> a >> b;
if(o==1){ rad(b); rad(a); rr[rr[a]]=rr[b]; rad(a); } else
if(rr[a]==rr[b]) gg << "DA\n"; else gg << "NU\n";
}
return 0;
}