Pagini recente » Cod sursa (job #2314988) | Cod sursa (job #1353099) | Cod sursa (job #1526585) | Cod sursa (job #1605107) | Cod sursa (job #1593082)
#include <cstdio>
#include <vector>
#define NMAX 50005
using namespace std;
vector<int> v[NMAX];
vector<int> h;
int viz[NMAX],t,n,m;
void DFS(int x){
if(viz[x]==0){
viz[x]=++t;
for(int parcurg=0;parcurg<v[x].size();parcurg++)
DFS(v[x][parcurg]);
h.push_back(x);
}
}
void citire(){
scanf("%d %d\n",&n,&m);
int i,j,k;
for(k=m;k>=1;k--){
scanf("%d %d",&i,&j);
v[i].push_back(j);
}
}
int main()
{
freopen("sortaret.in","r",stdin);
freopen("sortaret.out","w",stdout);
citire();
for(int i=1;i<=n;i++)
if(viz[i]==0)
DFS(i);
for(int parcurg=h.size()-1;parcurg>=0;parcurg--)
printf("%d ",h[parcurg]);
return 0;
}