Pagini recente » Cod sursa (job #1137941) | Cod sursa (job #392857) | Cod sursa (job #2129486) | Cod sursa (job #1373214) | Cod sursa (job #2288927)
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
vector<int>graph[100005];
ifstream f("dfs.in");
ofstream g("dfs.out");
int n, m, s,from, to,viz[100005],nr;
void bfs(int ind)
{
viz[ind]=1;
for (auto el:graph[ind])
{
if (viz[el]==0)
bfs(el);
}
}
int main() {
f >> n >> m;
for (int i=1; i<=m; i++)
{
f >> from >> to;
graph[from].push_back(to);
graph[to].push_back(from);
}
for (int i=1; i<=n; i++)
{
if (!viz[i])
{
nr++;
bfs(i);
}
}
cout << nr;
return 0;
}