Cod sursa(job #1797328)

Utilizator radu.leonardoThe Doctor radu.leonardo Data 4 noiembrie 2016 11:28:16
Problema Paduri de multimi disjuncte Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("disjoint.in");
ofstream g("disjoint.out");
int v[100001],n,m,i,t,x,y;

int main()
{f>>n>>m;
 for(i=1;i<=n;i++) v[i]=i;
 for(i=1;i<=m;i++)
 {f>>t>>x>>y;
  if(t==1)
  { while(v[x]!=y) {n=v[x];v[x]=y,x=n;}

  }
  else
    { while(v[x]!=x) x=v[x];
      while(v[y]!=y) y=v[y];
      if(x==y) cout<<"DA\n";
      else cout<<"NU\n";
    }


 }

}