Pagini recente » Cod sursa (job #642395) | Cod sursa (job #1860691) | Cod sursa (job #2155868) | Cod sursa (job #2554815) | Cod sursa (job #1503275)
#include <fstream>
//#include <iostream>
using namespace std;
int v[1001][1001], vf, nr=0, n;
int viz[1001];
/*void init(int k)
{
//cout<<"Init\n";
vf=1;
st[vf]=k;
viz[k]=1;
//cout<<"Init OK!\n";
}*/
void df(int k)
{
//cout<<"Defeu!\n";
int i=1;
viz[k]=1;
for(i=1;i<=n;i++)
{
if(!viz[i] && v[k][i] )
df(i);
}
}
int main()
{
ifstream g ("dfs.in");
ofstream h ("dfs.out");
int m, x, y, i;
g>>n>>m;
for(i=0;i<m;i++)
{
//cout<<"Citire OK!\n";
g>>x>>y;
v[x][y]=1;
v[y][x]=1;
}
//df-probabil recursiv
for(i=1;i<=n;i++)
{
//cout<<"For OK!\n";
if(!viz[i])
{
nr++;
df(i);
}
}
h<<nr;
}