Pagini recente » Cod sursa (job #494398) | Cod sursa (job #936022) | Cod sursa (job #2944309) | Cod sursa (job #1283905) | Cod sursa (job #2891980)
#include <vector>
#include <fstream>
using namespace std;
ifstream cin("dfs.in");
ofstream cout("dfs.out");
const int NMAX = 100001;
vector <int> adj[NMAX];
bool v[NMAX];
int n,cnx;
void citire(){
int m, i,j;
cin >> n>> m;
while (cin >> i >> j){
adj[i].push_back(j);
adj[j].push_back(i);
}
}
void dfs(int nod){
v[nod] = 1;
for (int i =0; i < adj[nod].size();++i){
int vecin = adj[nod][i];
if (!v[vecin])
dfs(vecin);
}
}
int main(){
citire();
for (int i =1; i <=n;++i){
if (!v[i]){
++cnx;
dfs(i);
}
}
cout << cnx;
}