Pagini recente » Cod sursa (job #1274357) | Cod sursa (job #2659226) | Cod sursa (job #1660556) | Cod sursa (job #1205060) | Cod sursa (job #2550933)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("sortaret.in");
ofstream fout ("sortaret.out");
int n,m,i,x,y;
queue <int> q;
struct nodS
{
vector <int> vecini;
int ingrade=0;
} nod[50005];
int main()
{
fin>>n>>m;
for(i=1;i<=m;i++)
{
fin>>x>>y;
nod[x].vecini.push_back(y);
nod[y].ingrade++;
}
for(i=1;i<=n;i++)
if(!nod[i].ingrade)
q.push(i);
while(!q.empty())
{
int curr = q.front();
q.pop();
fout<<curr<<' ';
for(auto it : nod[curr].vecini)
{
nod[it].ingrade--;
if(!nod[it].ingrade)
q.push(it);
}
}
return 0;
}