Cod sursa(job #2277655)

Utilizator tetrismeila ana gabriela tetris Data 6 noiembrie 2018 18:13:59
Problema Paduri de multimi disjuncte Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("disjoint.in") ;
ofstream g("disjoint.out") ;
int m , n , i , j , a[100001];

int grad( int b )
{
    if( a[b] == b )
        return b ;
    else grad( a[b] ) ;
}

int main()
{

f >> m >> n ;
for( i = 1 ; i <= m ; i ++ ){
    a[i] = i ;
}
for( i = 1 ; i <= n ; i ++ )
{  int cod , x , y ;
    f >> cod >> x >> y ;

    if( cod == 1){

    a[grad( x )] = grad( y ) ;
    }
    else
        if( grad( x ) == grad( y ) )
            g << "DA" << "\n" ;
        else g << "NU" << "\n" ;
}

}