Cod sursa(job #2595326)

Utilizator alex_benescuAlex Ben alex_benescu Data 7 aprilie 2020 15:48:43
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>
#include <vector>
using namespace std;
const int MAX=100003;
vector<int>graf[MAX];
int n,m,st,dr,cnt;
bool sel[MAX];
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;
  return 0;
}