Cod sursa(job #1126780)

Utilizator Edward2012Eduard Ursinschi Edward2012 Data 27 februarie 2014 09:43:59
Problema Parcurgere DFS - componente conexe Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int r=1,p,i,a,b,viz[100001],n,k;
vector<int> v[100001];
long long max1;
void DFS(int p)
{viz[p]=r;
 for(int i=0;i<v[p].size();i++)
   if(viz[v[p][i]]==0) {viz[v[p][i]]=r;DFS(v[p][i]);}
}

int main()
{ f>>n>>k;
    r=0;
  for(i=1;i<=k;i++) {f>>a>>b;
                     v[a].push_back(b);
                     v[b].push_back(a);
                     }

max1=0;
 for(i=1;i<=n;i++) if(!viz[i]){r++;DFS(i);}
 for(i=1;i<=n;i++) if(viz[i]>max1) max1=viz[i];
 g<<max1<<'\n';
    return 0;
}