Cod sursa(job #1956963)

Utilizator flibiaVisanu Cristian flibia Data 7 aprilie 2017 10:35:23
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <bits/stdc++.h>

using namespace std;

ifstream in("sortaret.in");
ofstream out("sortaret.out");

int n, m, k, x, y, st[50100]; bool viz[50100];
vector <int> v[50100];

void dfs(int x){
	viz[x] = 1;
	for(auto it : v[x]) 
		if(!viz[it]) dfs[it];
	st[++k] = x;
}

int main(){
	in >> n >> m;
	for(int i = 1; i <= m; i++){
		in >> x >> y;
		v[x].push_back(y);
	}
	for(int i = 1; i <= n; i++) 
		if(!viz[i]) dfs(i);
	for(int i = 1; i <= k; i++) out << st[i] << ' ';
	return 0;
}