Cod sursa(job #811571)

Utilizator ephgstefana gal ephg Data 12 noiembrie 2012 17:48:45
Problema Sortare topologica Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<cstdio>
#include<vector>
#include<algorithm>
#include<bitset>
using namespace std;
#define BM 50005
typedef vector<int>::iterator it;
int n,m;
bitset<BM>viz;
vector<int>pre[BM];
void af(int i){
	viz[i]=1;
	for(it ii=pre[i].begin();ii!=pre[i].end();++ii)if(!viz[*ii])af(*ii);
	printf("%d ",i);
}
int main () {
	int i,a,b;
	freopen("sortaret.in","r",stdin);
	freopen("sortaret.out","w",stdout);
	scanf("%d %d",&n,&m);
	for(i=1;i<=m;++i){
		scanf("%d %d",&a,&b);
		pre[b].push_back(a);
	}
	for(i=1;i<=n;++i)if(!viz[i])af(i);
	return 0;
}