Pagini recente » Cod sursa (job #796747) | Cod sursa (job #2839775) | Cod sursa (job #1436609) | Cod sursa (job #2059607) | Cod sursa (job #798792)
Cod sursa(job #798792)
#include <cstdio>
#include <fstream>
#include <vector>
using namespace std;
#define pb push_back
vector<int> G[50001],sol;
int n,m;
bool v[50001];
void read ()
{
ifstream in ("sortaret.in");
in>>n>>m;
for(int i,j;m;--m)
{
in>>i>>j;
G[i].pb(j);
}
}
void DFS (int nd)
{
v[nd]=1;
for(vector<int>::iterator it=G[nd].begin();it<G[nd].end();++it)
if(!v[*it])
DFS(*it);
sol.pb(nd);
}
void out ()
{
freopen ("sortaret.out","w",stdout);
for(vector<int>::iterator it=sol.end()-1;it>=sol.begin();--it)
printf("%d ",*it);
}
int main ()
{
read ();
for(int i=1;i<=n;++i)
if(!v[i])
DFS(i);
out ();
return 0;
}