Pagini recente » Cod sursa (job #752335) | Cod sursa (job #216714) | Cod sursa (job #747346) | Cod sursa (job #2434457) | Cod sursa (job #768665)
Cod sursa(job #768665)
# include <fstream>
using namespace std;
ifstream f("dfs.in");
ofstream g("dfs.out");
int N,M,viz[100005],c;
struct nod
{
int x;
nod *y;
};
nod v[100005];
void adaugare(nod &dest, int val)
{
nod *q;
q = new nod;
q->x=val;
q->y=dest;
dest=q;
}
void citire()
{
f>>N>>M;
int i,a,b;
q= new nod;
for (i=1;i<=M;i++)
{
f>>a>>b;
adaugare(v[x],y);
adaugare(v[y],x);
}
f.close();
}
void DFS(int x)
{
nod *q;
viz[nod]=1;
for (q=v[nod]; q!=NULL; q=q->y)
if(viz[p->x]==0)
DFS(p->x);
}
int main()
{
citire();
int i;
for (i=1;i<=N;i++)
if(viz[i]==0)
{
c++;
DFS(i);
}
g<<c;
g.close();
return 0;
}