Pagini recente » Cod sursa (job #321707) | Cod sursa (job #2750243) | Cod sursa (job #1955077) | Cod sursa (job #2348506) | Cod sursa (job #2616611)
#include <fstream>
#include <vector>
using namespace std;
vector<int>graf[100003];
int n,m,st,dr,cnt;
bool sel[100003];
ifstream in("dfs.in");
ofstream out("dfs.out");
void dfs(int x){
sel[x]=true;
for(int i=0;i<graf[x].size();i++){
int y=graf[x][i];
if(sel[y]==false)
dfs(y);
}
}
int main(){
in>>n>>m;
for(int i=1;i<=m;i++){
in>>st>>dr;
graf[st].push_back(dr);
graf[dr].push_back(st);
}
for(int i=1;i<=n;i++)
if(sel[i]==false){
cnt++;
dfs(i);
}
out<<cnt;
}