Pagini recente » Cod sursa (job #210607) | Cod sursa (job #1403514) | Cod sursa (job #1377653) | Cod sursa (job #2061196) | Cod sursa (job #2892579)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
set<int> st;
vector<int> G[50005];
int n, m, x, y, g[50005];
int main() {
fin >> n >> m;
for(int i = 1; i <= m; i++) {
fin >> x >> y;
G[x].push_back(y);
g[y]++;
}
fin.close();
for(int i = 1; i <= n; i++) {
if(g[i] == 0) {
st.insert(i);
}
}
while(!st.empty()) {
x = *st.begin();
st.erase(x);
fout << x << " ";
for(int i : G[x]) {
g[i]--;
if(g[i] == 0) {
st.insert(i);
}
}
}
return 0;
}