Pagini recente » Cod sursa (job #3368916) | Cod sursa (job #3368939) | Cod sursa (job #3368924) | Cod sursa (job #3368905) | Cod sursa (job #3368910)
#include <bits/stdc++.h>
using namespace std;
int n,m,i,j,grad[200005];
vector<int>g[200005];
queue<int>q;
vector<int>ans;
int main() {
freopen("sortaret.in", "r", stdin);
freopen("sortaret.out", "w", stdout);
cin.tie(0); cout.tie(0);
ios_base::sync_with_stdio(false);
cin>>n>>m;
while (m--)
{
cin>>i>>j;
g[i].push_back(j);
grad[j]++;
}
for (i=1; i<=n; i++)
{
if (grad[i]==0)
{
q.push(i);
}
}
while (!q.empty())
{
int u=q.front();
ans.push_back(u);
q.pop();
for (auto v : g[u])
{
grad[v]--;
if (grad[v]==0)
{
q.push(v);
}
}
}
for (auto it : ans)
{
cout<<it<<" ";
}
}