Pagini recente » Cod sursa (job #2297139) | Autentificare | Cod sursa (job #1718130) | Cod sursa (job #1773702) | Cod sursa (job #2425342)
#include <iostream>
#include <fstream>
#include <queue>
using namespace std;
int q[50005], gi[50005];
vector <int> mat[50005];
int main()
{
//ifstream in ("date.in");/*
ifstream in ("muzeu.in");
ofstream out ("muzeu.out");//*/
int n, m, x, y, i;
vector <int> :: iterator it, fit;
in >> n >> m;
for (i = 0; i < m; ++i) {
in >> x >> y;
++gi[y];
mat[x].push_back(y);
}
for (i = 1; i <= n; ++i) {
if (gi[i] == 0) {
q[++q[0]] = i;
}
}
i = 1;
while (i <= q[0]) {
out << q[i] << " ";
it = mat[q[i]].begin();
fit = mat[q[i]].end();
while (it != fit) {
if ((--gi[*it]) == 0) {q[++q[0]] = *it;}
++it;
}
++i;
}
return 0;
}