Pagini recente » Cod sursa (job #1792120) | Cod sursa (job #2107921) | Cod sursa (job #3159366) | Cod sursa (job #2207992) | Cod sursa (job #1855921)
#include<fstream>
#include<vector>
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
int viz[50010];
vector<int> stk;
vector<int> G[50010];
void sort_top(int x)
{
viz[x] = 1;
for (int i = 0; i < G[x].size(); ++i)
if (!viz[G[x][i]])
sort_top(G[x][i]);
stk.push_back(x);
}
int main()
{
int N, M;
in >> N >> M;
for (int i = 1; i <= M; ++i)
{
int x, y;
in >> x >> y;
G[x].push_back(y);
}
for (int i = 1; i <= N; ++i)
{
if (!viz[i])
sort_top(i);
}
for (int i = stk.size() - 1; i >= 0; --i)
out << stk[i] << " ";
return 0;
}