Pagini recente » Cod sursa (job #166683) | Cod sursa (job #165984) | Cod sursa (job #2577856) | Cod sursa (job #2085688) | Cod sursa (job #2331283)
#include <fstream>
using namespace std;
int G[10001][10001], viz[10001], n, m, nr;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
void dfs (int k, int G[10001][10001], int viz[10001], int n) {
viz[k] = 1;
for (int i = 1; i <= n; ++i) {
if(viz[i] == 0 && G[k][i] == 1) {
dfs(i, G, viz, n);
}
}
}
int main()
{
fin >> n >> m;
for (int i = 1; i <= m; ++i) {
int x, y;
fin >> x >> y;
G[x][y] = 1;
G[y][x] = 1;
}
for (int s = 1; s <= n; ++s) {
if (viz[s] == 0) {
nr++;
dfs(s, G, viz, n);
}
}
fout << nr;
return 0;
}