Pagini recente » Cod sursa (job #772878) | Cod sursa (job #49977) | Cod sursa (job #2289125) | Cod sursa (job #2570806) | Cod sursa (job #2795670)
#include <bits/stdc++.h>
using namespace std;
ifstream in ("sortaret.in");
ofstream out ("sortaret.out");
#define Nmax 50005
vector<int> la[Nmax];
vector<int> vizitat(Nmax,0);
vector<int> sort_top;
void sortaret(int x)
{
vizitat[x]=1;
for(int nod : la[x])
{
if(vizitat[nod]==0)
sortaret(nod);
}
sort_top.push_back(x);
}
int main()
{
int N,M;
in>>N>>M;
for(int i=1 ; i <= M ; i++)
{
int a,b;
in>>a>>b;
la[a].push_back(b);
}
for(int i=N; i>=1; i--)
{
if(vizitat[i]==0)
sortaret(i);
}
for( int i=sort_top.size() -1; i>=0; i--)
out<<sort_top[i]<<" ";
return 0;
}