Pagini recente » Cod sursa (job #2513098) | Cod sursa (job #239804) | Cod sursa (job #2895248) | Cod sursa (job #2813126) | Cod sursa (job #1163339)
#include <cstdio>
#include <vector>
#define Nmax 50005
using namespace std;
int N,sol[Nmax];
vector <int> L[Nmax];
bool viz[Nmax];
inline void Dfs(int nod)
{
int len=L[nod].size(),i;
viz[nod]=true;
for(i=0;i<len;++i)
if(!viz[L[nod][i]])
Dfs(L[nod][i]);
sol[++sol[0]]=nod;
}
int main()
{
int M,x,y,i;
freopen ("sortaret.in","r",stdin);
freopen ("sortaret.out","w",stdout);
scanf("%d%d", &N,&M);
while(M--)
{
scanf("%d%d", &x,&y);
L[x].push_back(y);
}
for(i=1;i<=N;++i)
if(!viz[i])
Dfs(i);
for(i=sol[0];i;--i)
printf("%d ", sol[i]);
printf("\n");
return 0;
}