Pagini recente » Cod sursa (job #1826276) | Cod sursa (job #2804523) | Cod sursa (job #342637) | Cod sursa (job #1613126) | Cod sursa (job #2607186)
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
ifstream cin("sortaret.in");
ofstream cout("sortare.out");
const int N =50004;
queue<int> q;
vector <int> L[N];
int grdInt[N];
int n ,m;
int main() {
int x,y;
cin >> n >> m;
for(int i = 1; i <=m; i ++) {
cin >> x >> y;
L[x].push_back(y);
grdInt[y]++;
}
for(int i = 1 ;i <=n; i ++)
{
if(grdInt[i] == 0)
q.push(i);
}
while(!q.empty())
{
int aux = q.front();
cout << aux<<" ";
q.pop();
for(int i :L[aux])
{
grdInt[i]--;
if(!grdInt[i])
q.push(i);
}
}
return 0;
}