Cod sursa(job #418549)

Utilizator mihaionlyMihai Jiplea mihaionly Data 16 martie 2010 00:54:40
Problema Paduri de multimi disjuncte Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <cstdio>
using namespace std;
FILE *f=fopen("disjoint.in","r");
FILE *g=fopen("disjoint.out","w");
#define nmax 100005
int n,m;
int A[nmax];
int M[nmax];
int main()
 {
 int i;
 int cod,x,y;
 fscanf(f,"%d %d",&n,&m);
 for(i=1;i<=n;i++) M[i]=A[i]=i;
 for(i=1;i<=m;i++)
  {
  fscanf(f,"%d %d %d",&cod,&x,&y);
  if(cod==1)
   {
   M[A[x]]=A[y];
   A[x]=M[A[y]];
   }
  else if(M[A[x]]==M[A[y]])
   fprintf(g,"DA\n");
  else
   fprintf(g,"NU\n");
  }
 return 0;
 }