Pagini recente » Cod sursa (job #492013) | Cod sursa (job #1948707) | Cod sursa (job #2803829) | Cod sursa (job #435143) | Cod sursa (job #1261115)
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
#define nmax 100005
#define pb push_back
ifstream fin("dfs.in");
ofstream fout("dfs.out");
int n, m, i, x, y, j, elemente;
bool vizitat[nmax];
vector <int> v[nmax];
void dfs (int x){
for(int j=0; j<v[x].size(); j++)
if(!vizitat[v[x][j]]){
vizitat[v[x][j]]=true;
dfs(v[x][j]);
}
}
int main()
{
fin >> n >> m;
for(i=1; i<=m; i++){
fin >> x >> y;
v[x].pb(y);
v[y].pb(x);
}
cout << v[1][1];
for(i=1; i<=n; i++){
if(!vizitat[i]){
elemente++;
vizitat[i]=true;
dfs(i);
}
}
fout << elemente;
return 0;
}