Pagini recente » Cod sursa (job #3177367) | Cod sursa (job #1654862) | Cod sursa (job #2268315) | Cod sursa (job #3267552) | Cod sursa (job #2468172)
#include<bits/stdc++.h>
using namespace std;
const int nmax=200000;
ifstream in("dfs.in");
ofstream out("dfs.out");
vector <int>G[nmax+5];
int viz[nmax+5];
int k=0;
void dfs(int i)
{
int j;
viz[i]=1;
for(j=0;j<G[i].size();++j)
{
int vecin=G[i][j];
if(viz[vecin]==0)
dfs(vecin);
}
}
void ver(int i)
{
k++;
dfs(i);
}
void re()
{
int n,m;int p,q;
in>>n>>m;
for(int i=1;i<=m;++i)
{
in>>p>>q;
G[q].push_back(p);
G[p].push_back(q);
}
for(int i=1;i<=n;++i)
{
if(viz[i]==0)
{
ver(i);
}
}
}
int main()
{
re();
out<<k;
return 0;
}