Pagini recente » Cod sursa (job #2245278) | Cod sursa (job #2756822) | Cod sursa (job #1468886) | Cod sursa (job #596212) | Cod sursa (job #2327889)
#include <bits/stdc++.h>
using namespace std;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
int n,m,d[50005];
vector <int> L[50005];
priority_queue <int> q;
void BFS()
{
int nr;
for (int pas=1;pas<=n;pas++)
{
nr=-1*q.top();
q.pop();
out<<nr<<" ";
for (auto k:L[nr])
{
d[k]--;
if (d[k]==0)q.push(-k);
}
}
out<<"\n";
}
int main()
{int i,a,b;
in>>n>>m;
for (i=1;i<=m;i++)
{
in>>a>>b;
L[a].push_back(b);
d[b]++;
}
for (i=1;i<=n;i++)if (d[i]==0)q.push(-i);
BFS();
out.close();
in.close();
return 0;
}