Cod sursa(job #2665540)

Utilizator MARIAN.DANAILADanaila Marian MARIAN.DANAILA Data 31 octombrie 2020 00:36:45
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb

#include<bits/stdc++.h>

using namespace std;

ifstream fin("dfs.in");
ofstream fout("dfs.out");

vector<int> graph[100001];
int visited[100001];

int main()
{
    int n,m,x,y,i,curr,it;
    fin>>n>>m;
    for(i=0;i<m;i++){
        fin>>x>>y;
        graph[x].push_back(y);
        graph[y].push_back(x);
    }
    queue<int>q;
    int cnt = 0;
    for(i=1;i<=n;i++){
        if(!visited[i]){
            cnt += 1;
            q.push(i);
            visited[i] = 1;
            while(!q.empty()){
                curr = q.front();
                q.pop();
                for(auto it:graph[curr]){
                    if(!visited[it]){
                        q.push(it);
                        visited[it] = 1;
                    }
                }
            }
        }
    }
    fout<<cnt;

    return 0;
}