Cod sursa(job #2938087)
| Utilizator | Data | 11 noiembrie 2022 16:32:08 | |
|---|---|---|---|
| Problema | Paduri de multimi disjuncte | Scor | 40 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.67 kb |
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream fin("disjoint.in");
ofstream fout("disjoint.out");
int n, m;
vector<int> v;
int main() {
fin>>n>>m;
v.resize(n+1);
for(int i=1; i<=n; i++)
v[i]=i;
for(int i=1; i<=m; i++) {
int cod, x, y;
fin>>cod>>x>>y;
if(cod==1) {
int a=v[x], b=v[y];
for(int j=1; j<=n; j++)
if(v[j]==a)
v[j]=b;
}
else {
if(v[x]==v[y])
fout<<"DA";
else
fout<<"NU";
fout<<endl;
}
}
return 0;
}
