Pagini recente » Cod sursa (job #2289388) | Cod sursa (job #2106248) | Cod sursa (job #2060306) | Rating Alin Ienei (arrow) | Cod sursa (job #2436150)
#include <bits/stdc++.h>
#define NMAX 50005
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
vector <int> v[NMAX];
int deg[NMAX];
int Q[NMAX];
int n,m,lg;
void topo()
{
int x;
for(int i=1;i<=n;++i)
if(deg[i]==0) Q[++lg]=i;
for(int i=1;i<=n;++i)
{
x=Q[i];
for(auto y:v[x])
{
deg[y]--;
if(deg[y]==0) Q[++lg]=y;
}
}
}
int main()
{
int x,y;
fin>>n>>m;
for(int i=1;i<=m;++i)
{
fin>>x>>y;
v[x].push_back(y);
deg[y]++;
}
topo();
for(int i=1;i<=n;++i)
fout<<Q[i]<<" ";
return 0;
}