Pagini recente » Cod sursa (job #2593501) | Cod sursa (job #2228574) | Cod sursa (job #1809378) | Cod sursa (job #697094) | Cod sursa (job #2372881)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("dfs.in");
ofstream cout("dfs.out");
vector <int> graf[100];
void dfs(int i,int sizev,int viz[]){
viz[i]=1;
for(int k=0;k<sizev;k++){
int vecin = graf[i][k];
if(viz[vecin]==0)
dfs(vecin,graf[vecin].size(),viz);
}
}
int main()
{
int x,y,n,m;
cin>>n>>m;
int viz[n+1]={},cnt=0;
for(int i=0;i<m;i++){
cin>>x>>y;
graf[x].push_back(y);
graf[y].push_back(x);
}
for(int i=1;i<=n;i++){
if(viz[i]==0){
cnt++;
int sizev=graf[i].size();
dfs(i,sizev,viz);
}
}
cout<<cnt;
return 0;
}