Cod sursa(job #875040)

Utilizator mads2194FMI - Andrei Stroe mads2194 Data 9 februarie 2013 17:15:03
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<cstdio>
#include<vector>

using namespace std;

#define MN 50001

int d[MN],n,m;
bool visit[MN];

vector <int> a[MN];

void read()
{
	scanf("%d %d",&n,&m);
	int x,y;
	for(;m>0;--m)
	{
		scanf("%d %d",&x,&y);
		a[x].push_back(y);
	}
	
}

void dfs(int pos)
{
	if(visit[pos]) return;
	visit[pos]=1;
	printf("%d ",pos);
	
	for(size_t i=0;i<a[pos].size();++i)
		dfs(a[pos][i]);
}

int main()
{
	freopen("sortaret.in","r",stdin);
	freopen("sortaret.out","w",stdout);
	
	read();
	for(int i=1;i<=n;++i)
		if(!visit[i]) dfs(i);
	
	return 0;
}