Pagini recente » Cod sursa (job #2336161) | Autentificare | Istoria paginii utilizator/churchil | Statistici sevastian emma (em_yfriend) | Cod sursa (job #361330)
Cod sursa(job #361330)
#include<fstream>
using namespace std;
long n,m, vizitat[100005],nrc;
typedef struct nod
{
int info;
nod* urm;
} * tnod;
tnod v[100005];
void citire()
{
int i,j,x,y;
ifstream f ("dfs.in");
f>>n>>m;
tnod p;
for (i=1;i<=n;i++)
{
f>>x>>y;
p=new nod;
p-> info=x;
p-> urm = v[y];
v[y]=p;
p= new nod;
p-> info= y;
p-> urm= v[x];
v[x]=p;
}
f.close();
}
void df(int nod)
{
tnod p;
vizitat [nod]=1;
for (p=v[nod]; p!= NULL; p=p-> urm )
if (!vizitat[p->info])
df (p->info);
}
void afisare()
{
ofstream g ("dfs.out");
g<<nrc;
g.close();
}
int main()
{
int j,ok=1,k;
citire();
for(k=1;k<=n;k++)
if (vizitat[k]==0)
{nrc ++;
df(k);
}
afisare();
return 0;
}