Pagini recente » Cod sursa (job #2817654) | Cod sursa (job #1781980) | Cod sursa (job #577606) | Cod sursa (job #1807434) | Cod sursa (job #2117750)
#include <iostream>
#include <fstream>
#include <vector>
#define nmax 50002
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
vector<int> G[nmax],L;
int n,m,viz[nmax],x,y;
void read()
{
fin>>n>>m;
for(int i =1 ; i <= m ; i ++)
{
fin>>x>>y;
G[x].push_back(y);
}
}
void visit(int node)
{
if(viz[node])
return;
viz[node]=1;
for(int i = 0 ; i < G[node].size();i++)
visit(G[node][i]);
L.push_back(node);
}
void solve()
{
for(int node=1; node <= n ; node++)
visit(node);
}
void write()
{
while(!L.empty())
{
fout<<L.back()<<" ";
L.pop_back();
}
}
int main()
{
read();
solve();
write();
return 0;
}