Pagini recente » Cod sursa (job #353385) | Cod sursa (job #2800990) | Cod sursa (job #1528952) | Cod sursa (job #833748) | Cod sursa (job #286978)
Cod sursa(job #286978)
#include<stdio.h>
int a[1500][1500],n,nrp[1500],;
void citire(){
int m,x,y;
scanf("%d%d",&n,&m);
while(m--){
scanf("%d%d",&x,&y);
a[x][++a[x][0]]=y;
++nrp[y];
}
}
void bfs(){
int i, x,y,u=0,p=1,coada[100];
for(i=1;i<=n;++i)
if(nrp[i]==0){
coada[++u]=i;
printf("%d ", i);
}
while(p<=u){
x=coada[p++];
for(i=1;i<=a[x][0];++i){
y=a[x][i];
--nrp[y];
if(nrp[y]==0){
coada[++u]=y;
printf("%d ",y);
}
}
}
}
int main(){
freopen("sortaret.in","r",stdin);
freopen("sortaret.out","w",stdout);
citire();
bfs();
return 0;
}