Pagini recente » Cod sursa (job #516577) | Cod sursa (job #512007) | Cod sursa (job #2573004) | Cod sursa (job #864180) | Cod sursa (job #2712526)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
const int nmax=50001;
vector <int> g[nmax];
vector <int> ans;
int n,m,grad[nmax];
void sorttop()
{
queue<int> q;
for(int i=1;i<=n;i++)
if(grad[i]==0)
q.push(i);
while(!q.empty())
{
int nod=q.front();
ans.push_back(nod);
q.pop();
for(auto it:g[nod])
{
grad[it]--;
if(grad[it]==0)
q.push(it);
}
}
}
int main()
{
fin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y;
fin>>x>>y;
g[x].push_back(y);
grad[y]++;
}
sorttop();
for(auto it:ans)
fout<<it<<" ";
return 0;
}