Pagini recente » Cod sursa (job #2821238) | Cod sursa (job #2197220) | Cod sursa (job #1838496) | Cod sursa (job #3264539) | Cod sursa (job #369207)
Cod sursa(job #369207)
using namespace std;
#include<fstream>
int n,m;
short lista[10000][10000],conex[10000];
void read()
{
int x,y,i;
ifstream fin("dfs.in");
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x>>y;
lista[x][++lista[x][0]]=y;
lista[y][++lista[y][0]]=x;
}
fin.close();
}
void dfs(int x,int c)
{
int i,y,n=lista[x][0];
conex[x]=c;
for(i=1;i<=n;i++)
{
y=lista[x][i];
if(conex[y]==0)
{
conex[y]=c;
dfs(y,c);
}
}
}
void write(int n)
{
ofstream fout("dfs.out");
fout<<n;
fout.close();
}
int main()
{
int i,nrc=0;
read();
for(i=1;i<=n;i++)
if(conex[i]==0)
dfs(i,++nrc);
write(nrc);
return 0;
}