Pagini recente » Cod sursa (job #2667069) | Autentificare | Cod sursa (job #1533184) | Cod sursa (job #1722740) | Cod sursa (job #1546976)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
vector <int> v[100000];
int n,m,cate,a,b;
bool da[100000];
void dfs ( int p ){
if ( da[p] )
return;
for ( int i=0 ; i<v[p].size() ; i++ ){
da[v[p][i]]=true;
dfs(v[p][i]);
}
}
int main()
{
fin>>n>>m;
for ( int i=1 ; i<=m ; i++ ){
fin>>a>>b;
v[a].push_back(b);
}
for ( int i=1 ; i<=n ; i++ ){
if ( !da[i] ){
dfs(i);
cate++;
}
}
fout<<cate;
}