Pagini recente » Cod sursa (job #1618871) | Cod sursa (job #1701765) | Cod sursa (job #232552) | Cod sursa (job #3161519) | Cod sursa (job #1151804)
#include <cstdio>
#include<vector>
#define maxn 200010
using namespace std;
FILE *f=fopen("dfs.in","r");
FILE *g=fopen("dfs.out","w");
vector <int> G[maxn];
int v[maxn],n,m,x,y,nr;
void search(int nod){
v[nod]=1;
while(G[nod].size()>0){
int x=G[nod][0];
G[nod].erase(G[nod].begin());
if(v[x]==0)
search(x);
}
}
int main()
{
fscanf(f,"%d%d",&n,&m);
for(int i=1;i<=m;i++){
fscanf(f,"%d%d",&x,&y);
G[x].push_back(y);
G[y].push_back(x);
}
for(int i=1;i<=n;i++){
if(v[i]==0)
search(i),nr++;
}
fprintf(g,"%d",nr);
return 0;
}