Pagini recente » Cod sursa (job #952330) | Cod sursa (job #1336409) | Cod sursa (job #426517) | Cod sursa (job #2890334) | Cod sursa (job #2345205)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("dfs.in");
ofstream cout("dfs.out");
int n, m, k;
vector<int> a[100010];
bool viz[100010];
void dfs(int nod) {
viz[nod] = 1;
for(int i=0; i<a[nod].size(); i++)
if(!viz[a[nod][i]])
dfs(a[nod][i]);
}
int main() {
cin >> n >> m;
while(m--) {
int x, y;
cin >> x >> y;
a[x].push_back(y);
a[y].push_back(x);
}
for(int i=1; i<=n; i++)
if(!viz[i])
k++, dfs(i);
cout << k;
return 0;
}