Pagini recente » Cod sursa (job #318336) | Cod sursa (job #2432378) | Cod sursa (job #997140) | Cod sursa (job #2910689) | Cod sursa (job #500595)
Cod sursa(job #500595)
#include <stdio.h>
#include <vector>
#include <algorithm>
#include <string.h>
#define pb push_back
using namespace std;
vector<int> a[100001],coada;
vector<int>::iterator it;
int i,n,m,x,y;
bool used[100001];
void df(int ind)
{
vector<int>::iterator it;
used[ind]=true;
for (it=a[ind].begin();it!=a[ind].end();it++)
{
if (!used[*it])
df(*it);
}
coada.pb(ind);
}
int main()
{
freopen("sortaret.in","r",stdin);
freopen("sortaret.out","w",stdout);
scanf("%d%d",&n,&m);
for (i=0;i<m;i++)
{
scanf("%d%d",&x,&y);
a[x].pb(y);
}
memset(used,false,sizeof(used));
for (i=1;i<=n;i++)
if (!used[i]) df(i);
reverse(coada.begin(),coada.end());
for (it=coada.begin();it!=coada.end();it++)
printf("%d ",*it);
return 0;
}