Pagini recente » Cod sursa (job #692523) | Cod sursa (job #2369501) | Cod sursa (job #3212122) | Cod sursa (job #1980655) | Cod sursa (job #2382397)
#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;
}