Pagini recente » Cod sursa (job #2221546) | Cod sursa (job #424963) | Cod sursa (job #636676) | Cod sursa (job #1932336) | Cod sursa (job #1493460)
#include <stdio.h>
#include <vector>
#include <list>
#include <bitset>
#define NMAX 50005
using namespace std;
vector <int> G[NMAX];
list <int> L;
bitset <NMAX> viz;
void dfs(int nod){
viz[nod] = 1;
for(vector <int> :: iterator it = G[nod].begin(); it != G[nod].end(); ++it)
if(!viz[*it])
dfs(*it);
L.push_front(nod);
}
int main(){
freopen("sortaret.in", "r", stdin);
freopen("sortaret.out", "w", stdout);
int N, M, x, y;
scanf("%d %d", &N, &M);
for(int i = 1; i <= N; ++i){
scanf("%d %d", &x, &y);
G[x].push_back(y);
}
for(int i = 1; i <= N; ++i)
if(!viz[i])
dfs(i);
while(!L.empty()){
printf("%d ", L.front());
L.pop_front();
}
return 0;
}