Pagini recente » Cod sursa (job #3250263) | Cod sursa (job #1682362) | Cod sursa (job #1389812) | Cod sursa (job #1921866) | Cod sursa (job #1284363)
#include <iostream>
#include <fstream>
#include <vector>
#define NMAX 50005
using namespace std;
vector<int> g[NMAX];
bool viz[NMAX];
int i, n, t, m, u, v, timp[NMAX];
void DFS(int nod)
{
viz[nod]=1;
for (i=0; i<g[nod].size(); i++)
{
if(!viz[g[nod][i]])
DFS(g[nod][i]);
}
timp[++t]=nod;
}
int main()
{
ifstream cin("sortaret.in");
ofstream cout("sortaret.out");
cin>>n>>m;
for(i=1; i<=m; ++i)
{
cin>>u>>v;
g[u].push_back(v);
}
for (i=1; i<=n; i++)
if (!viz[i])
DFS(i);
for(i=t;i>=1;--i)
cout<<timp[i]<<' ';
return 0;
}