Pagini recente » Cod sursa (job #606537) | Cod sursa (job #2368763) | Cod sursa (job #166727) | Cod sursa (job #2212164) | Cod sursa (job #2030662)
#include <iostream>
#include <stdio.h>
#include <fstream>
#define NN 1000
using namespace std;
int a[NN][NN],viz[NN],n;
void citire(){
freopen("dfs.in","r",stdin);
scanf("%d",&n);
int m;
scanf("%d",&m);
int x,y;
for(int i=1; i<=m ;++i)
{
scanf("%d%d",&x,&y);
a[x][y]=1;
}
}
void dfs(int nod){
viz[nod]=1;
for(int j=1; j<=n ; ++j)
if(a[nod][j])dfs(j);
}
int main()
{
int componente=0;
citire();
for (int i=1; i<=n ;++i)
if(!viz[i]){
dfs(i); componente++;}
freopen("dfs.out","w",stdout);
printf("%d",componente);
return 0;
}