Pagini recente » Cod sursa (job #422894) | Cod sursa (job #1382789) | Cod sursa (job #631009) | Cod sursa (job #662844) | Cod sursa (job #369197)
Cod sursa(job #369197)
using namespace std;
#include<fstream>
int n,m;
short lista[1001][1001],conex[1000];
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;
}
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;
}