Pagini recente » Cod sursa (job #1590369) | Cod sursa (job #808265) | Cod sursa (job #1857819) | Cod sursa (job #1899316) | Cod sursa (job #1490021)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n, m, i, j, a[1005][1005], cnt;
bool ok[1005];
void ReadGraph();
void DFS(int);
int main()
{
ReadGraph();
for(int i = 1; i <= n; i++)
if(ok[i] == 0)
cnt++, DFS(i);
cout << cnt;
return 0;
}
void ReadGraph()
{
fin >> n >> m;
for(int k = 1; k <= m; k ++)
{
fin >> i >> j;
a[i][j] = 1;
a[j][i] = 1;
}
}
void DFS(int nod)
{
ok[nod] = true;
for(int i = 1; i <= n; i++)
if(a[nod][i] == 1 && ok[i] == 0)
DFS(i);
}