Pagini recente » Cod sursa (job #2654746) | Cod sursa (job #1872858) | Cod sursa (job #1461152) | Cod sursa (job #3208075) | Cod sursa (job #2300065)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n, m, prim, ultim;
int in[50005], c[50005];
vector <int> L[50005];
int main()
{
int nod, a, b;
fin>>n>>m;
for(int i=1; i<=m; ++i)
{
fin>>a>>b;
L[a].push_back(b);
++in[b];
}
for(int i=1; i<=n; ++i)
if(!in[i])
c[++ultim] = i;
prim = 1;
while(prim <= ultim)
{
nod = c[prim++];
fout<<nod<<' ';
for(int i=0; i<L[nod].size(); ++i)
{
--in[L[nod][i]];
if(in[L[nod][i]] == 0)
c[++ultim] = L[nod][i];
}
}
return 0;
}