Pagini recente » Cod sursa (job #1946187) | Cod sursa (job #747736) | Cod sursa (job #1907866) | Cod sursa (job #2787787) | Cod sursa (job #1625807)
#include<fstream>
#include<vector>
using namespace std;
ifstream in ("dfs.in");
ofstream out ("dfs.out");
vector<vector<int> > g;
int vizitat[100005],n,m,raspuns;
void vizita(int nod){
vizitat[nod]=1;
for(vector <int> :: iterator it=g[nod].begin();it!=g[nod].end();it++)
if(vizitat[*it]==0)
vizita(*it);
}
int main(){
in>>n>>m;
g.resize(n+1);
for(int i=1;i<=m;i++){
int x,y;
in>>x>>y;
g[x].push_back(y);
g[y].push_back(x);
}
for(int i=1;i<=n;i++){
if(vizitat[i]==0){
vizita(i);
raspuns++;
}
}
out<<raspuns;
out.close();
return 0;
}