Pagini recente » Cod sursa (job #1655122) | Cod sursa (job #2393604) | Cod sursa (job #565414) | Cod sursa (job #1535026) | Cod sursa (job #2485704)
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define all(a) (a).begin(), (a).end()
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define forn(i,a,b) for (int i = a; i <= b; i++)
#define ff first
#define ss second
#define pb push_back
#define mp make_pair
#define rc(s) return cout<<s,0
#define rcc(s) cout<<s,exit(0)
#define er erase
#define in insert
#define pi pair <int, int>
#define pii pair <pi, pi>
# define sz(x) (int)((x).size())
#define inf 1000000000
const ll mod = 1000000007;
int t,n,x,y,c,a[100005];
ifstream in("disjoint.in");
ofstream out("disjoint.out");
int find(int i){
while(a[i]!=i){
a[i]=a[a[i]];
i=a[i];
}
return i;
}
void unionn(int xx,int yy){
a[find(xx)]=a[find(yy)];
}
int32_t main(){
ios_base::sync_with_stdio(0); cin.tie(); cerr.tie(); cout.tie();
in>>n>>t;
forn(i,1,n)a[i]=i;
while(t--){
in>>c>>x>>y;
if(c==1){
unionn(x,y);
}else{
if(find(x)==find(y))out<<"DA\n";else out<<"NU\n";
}
}
return 0;
}