Cod sursa(job #883528)

Utilizator RobertBBadea Corneliu Robert RobertB Data 20 februarie 2013 08:48:44
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

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

int N,M;
vector <int> v[50001];
bool ver[50001];

void DFS(int x)
{
	g << x << " ";
	ver[x] = 1;
	for(int i = 0; i < v[x].size(); i++) {
		if(ver[v[x][i]] == 0) {
			DFS(v[x][i]);
		}
	}
}

int main()
{
	int a,b;
	f >> N >> M;
	for(int i = 0; i < M; i++ ) {
		f >> a >> b;
		v[a].push_back(b);
	}
	for(int i = 1; i <= N; i++) {
		if(ver[i] == 0) {
			DFS(i);
		}
	}
}