Pagini recente » Cod sursa (job #1219802) | Cod sursa (job #630925) | Cod sursa (job #829461) | Cod sursa (job #2318029) | Cod sursa (job #1200003)
#include<iostream>
#include<vector>
#include<fstream>
#define maxn 100005
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
vector <int> t[maxn];
int i,j,n,m,nod[maxn],coada[maxn],comp,sf_coada;
void dfs(int k)
{
coada[1]=k;
sf_coada=1;
nod[k]=1;
for(int i=1;i<=sf_coada;i++)
for(int j=0;j<t[coada[i]].size();j++)
if(nod[t[coada[i]][j]]==0)
{
coada[++sf_coada]=t[coada[i]][j];
nod[t[coada[i]][j]]=1;
}
comp++;
}
int main()
{
f>>n>>m;
while(m>0)
{
f>>i>>j;
t[i].push_back(j);
t[j].push_back(j);
m--;
}
comp=0;
for(i=1;i<=n;i++)if(nod[i]==0)dfs(i);
g<<comp;
g.close();
return 0;
}