Pagini recente » Cod sursa (job #2122038) | Cod sursa (job #449342) | Cod sursa (job #219782) | Cod sursa (job #2282737) | Cod sursa (job #1165410)
#include <algorithm>
#include <cstdio>
#include <vector>
#include <bitset>
using namespace std;
const int N=50005;
bitset <N> v;
vector <int> G[N], nodes;
void dfs(const int n)
{
v[n]=1;
for(auto p: G[n]) if(!v[p]) dfs(p);
nodes.push_back(n);
}
int main()
{
freopen("sortaret.in", "r", stdin);
freopen("sortaret.out", "w", stdout);
int n, m, i, x, y;
scanf("%d%d", &n, &m);
while(m--)
{
scanf("%d%d", &x, &y);
G[x].push_back(y);
}
for(i=1;i<=n;i++) if(!v[i]) dfs(i);
reverse(nodes.begin(), nodes.end());
for(auto p: nodes) printf("%d ", p);
}