Pagini recente » Cod sursa (job #2685507) | Cod sursa (job #1043433) | Cod sursa (job #461496) | Cod sursa (job #1435036) | Cod sursa (job #2795678)
#include <bits/stdc++.h>
using namespace std;
ifstream in ("sortaret.in");
ofstream out ("sortaret.out");
#define Nmax 50005
vector<int> la[Nmax]; ///lista de adiacenta
vector<int> vizitat(Nmax,0); ///v de viz
vector<int> stiva;
void sortaret(int x)
{
vizitat[x]=1;
for(int nod : la[x])
{
if(vizitat[nod]==0)
sortaret(nod);
}
stiva.push_back(x);
}
int main()
{
int N,M;
in>>N>>M; ///nr noduri + nr muchii
for(int i=1 ; i <= M ; i++)
{
int a,b;
in>>a>>b;
la[a].push_back(b);
}
for(int i=1; i<=N; i++)
{
if(vizitat[i]==0)
sortaret(i);
}
for( int i=stiva.size() -1; i>=0; i--)
out<<stiva[i]<<" ";
return 0;
}