Pagini recente » Cod sursa (job #2397543) | Cod sursa (job #1005589) | Cod sursa (job #1650) | Cod sursa (job #2028664) | Cod sursa (job #698947)
Cod sursa(job #698947)
#include<fstream>
#include<iostream>
#include<vector>
using namespace std;
int p=0,x[100000],n,a,b;
vector<int> v[100000];
void dfs(int i)
{
for ( vector<int>::iterator it=v[i].begin() ; it!=v[i].end() ; ++it )
{
if(x[*it]==1) dfs(*it);
x[*it]=0;
p++;
}
}
void solve()
{
for(int i=1;i<=n;++i)
{
if(x[i]==1)
dfs(i);
}
}
int main()
{
int m;
ifstream f("dfs.in");
f>>n>>m;
for(int i=0;i<m;++i)
{
f>>a>>b;
x[a]=1;
v[a].push_back(b);
}
solve();
ofstream g("dfs.out");
g<<p;
return 0;
}