Pagini recente » Cod sursa (job #1007246) | Cod sursa (job #2803460) | Cod sursa (job #1571890) | Cod sursa (job #1805830) | Cod sursa (job #2414850)
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
ifstream in("sortaret.in");
ofstream out("output.txt");
int main()
{
int N,M,i;
in>>N>>M;
vector <vector <int>> G(N+1);
int grad[N+1]={0};
queue<int> Q;
for(i=1;i<=M;i++)
{
int x,y;
in>>x>>y;
G[x].push_back(y);
grad[y]++;
}
for(i=1;i<=N;i++)
if(grad[i]==0)
Q.push(i);
while(!Q.empty())
{
cout<<Q.front()<<" ";
i=Q.front();
Q.pop();
for(auto j: G[i])
{
grad[j]--;
if(grad[j]==0)
Q.push(j);
}
}
}