Pagini recente » Cod sursa (job #520586) | Cod sursa (job #1619753) | Cod sursa (job #1125450) | Cod sursa (job #2320589) | Cod sursa (job #2503099)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int mt[100][100], x, y, n, m, nrcomp, v[100000], nr, p;
void citire()
{
fin >> n >> m;
for (int i = 1; i <= m; i++)
{
fin >> x >> y;
mt[x][y] = 1;
mt[y][x] = 1;
}
}
void DFS(int nr)
{
v[nr] = nrcomp;
for (int i = 1; i <= n; i++)
if (mt[nr][i] == 1 && v[i] == 0)
DFS(i);
}
void comp()
{
for (int i = 1; i <= n; i++)
if (v[i] == 0)
{
nrcomp++;
DFS(i);
}
}
int main()
{
citire();
comp();
fout << nrcomp;
}