Pagini recente » Cod sursa (job #2604554) | Cod sursa (job #2912966) | Cod sursa (job #571428) | Cod sursa (job #2209548) | Cod sursa (job #1770972)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
const int NMAX = 50001;
vector<int> graf[NMAX];
stack<int> coada;
bool viz[NMAX];
void dfs(int nod)
{
viz[nod] = 1;
for(auto i: graf[nod])
if(!viz[i])
dfs(i);
coada.push(nod);
}
int main()
{
int n, m;
fin>>n>>m;
for(int i = 1; i <= m; i++)
{
int a, b;
fin>>a>>b;
graf[a].push_back(b);
}
for(int i = 1; i <= n; i++)
if(!viz[i])
dfs(i);
while(!coada.empty())
{
fout<<coada.top()<<' ';
coada.pop();
}
return 0;
}