Pagini recente » Cod sursa (job #2142211) | Cod sursa (job #2715272) | Cod sursa (job #1283210) | Cod sursa (job #1786298) | Cod sursa (job #3185735)
#include <bits/stdc++.h>
#define NMAX 100001
typedef long long ll;
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
vector <int> dsu[NMAX];
ll n, m, comp[NMAX], cod, x, y;
int main()
{
fin>>n>>m;
for(int i=1;i<=n;i++)
{
comp[i]=i;
dsu[i].push_back(i);
}
for(int i=1;i<=m;i++)
{
fin>>cod>>x>>y;
if(cod==1)
{
int c1=comp[x];
int c2=comp[y];
if(dsu[c1].size()<=dsu[c2].size())
swap(c1, c2);
for(int j=0;j<dsu[c2].size();j++)
{
dsu[c1].push_back(dsu[c2][j]);
comp[dsu[c2][j]]=c1;
}
}
else
{
if(comp[x]==comp[y])
fout<<"DA"<<'\n';
else
fout<<"NU"<<'\n';
}
}
return 0;
}