Pagini recente » Cod sursa (job #754831) | Cod sursa (job #2511985) | Cod sursa (job #325150) | Cod sursa (job #358105) | Cod sursa (job #1168996)
#include <fstream>
#include <vector>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
vector<int> graph[100001];
int n, m, i, visited[100001], node1, node2, nconex;
void dfs(int node)
{
visited[node]=1;
for (int j=0; j<graph[node].size(); j++)
if (!visited[graph[node][j]])
dfs(graph[node][j]);
}
int main()
{
f>>n>>m;
for (i=1; i<=m; i++) {
f>>node1>>node2;
graph[node1].push_back(node2);
graph[node2].push_back(node1);
}
for (i=1; i<=n; i++)
if (!visited[i]) {
nconex++;
dfs(i);
}
g<<nconex;
return 0;
}