Pagini recente » Cod sursa (job #1824055) | Cod sursa (job #81783) | Cod sursa (job #3256791) | Cod sursa (job #369381) | Cod sursa (job #2153951)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin ("ninjago.in");
ofstream fout ("ninjago.out");
const unsigned NMAX = 31200;
int N , M , VIZITAT[NMAX] ;
vector < int > MUCHII [NMAX] ;
int insule ;
void citire()
{
int i,x,y;
fin >> N >> M ;
for(i=1;i<=M;i++)
{
fin >> x >> y ;
MUCHII[x].push_back(y);
MUCHII[y].push_back(x);
}
}
void DFS ( int NOD )
{
VIZITAT [NOD] = 1;
for ( int i = 0 ; i < MUCHII[NOD].size() ; i++ )
{
int vecin = MUCHII[NOD][i];
if ( !VIZITAT [vecin] )
DFS ( vecin ) ;
}
}
int main()
{
int i;
citire();
for(i=1;i<=N;i++)
if( ! VIZITAT [i] )
{
DFS(i);
insule++;
}
fout << insule ;
return 0;
}