Pagini recente » Cod sursa (job #1833682) | Cod sursa (job #75182) | Cod sursa (job #2153439) | Cod sursa (job #371410) | Cod sursa (job #2926887)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("dfs.in");
ofstream fout("dfs.out");
const int dim=1e5+5;
vector<int> g[dim];
int n, m, x, y, cnt;
bool v[dim];
void dfs(int k)
{
v[k]=1;
for(int i: g[k])
if(!v[i])
dfs(i);
}
int main()
{
fin>>n>>m;
for(int i=1; i<=m; i++)
{
fin>>x>>y;
g[x].push_back(y);
}
fin.close();
for(int i=1; i<=n; i++)
if(!v[i])
{
cnt++;
dfs(i);
}
fout<<cnt;
fout.close();
return 0;
}