Pagini recente » Cod sursa (job #1585930) | Cod sursa (job #1622134) | Cod sursa (job #1872398) | Cod sursa (job #1769018) | Cod sursa (job #1044985)
#include <fstream>
#define MAXN 1005
using namespace std;
int N, M, A[MAXN][MAXN], viz[MAXN], cnt;
ifstream cin ("dfs.in");
ofstream cout ("dfs.out");
void citire ()
{
int x, y;
cin >> N >> M;
for( int i = 1; i <= M; ++ i)
{
cin >> x >> y;
A[x][y] = A[y][x] = 1;
}
}
void DFS ( int nod)
{
viz[nod] = 1;
for ( int i = 1; i <= N; ++ i)
if(!viz[i] && A[nod][i])
DFS(i);
}
int main()
{
citire();
for ( int i = 1; i <= N; ++ i)
if(!viz[i])
{
++ cnt ;
DFS(i) ; }
cout << cnt ;
cin.close();
cout.close();
return 0;
}