Pagini recente » Cod sursa (job #3366168) | Cod sursa (job #3366606) | Borderou de evaluare (job #3366081) | Cod sursa (job #3366078) | Cod sursa (job #3366088)
#include <bits/stdc++.h>
#include <vector>
#include <stack>
using namespace std;
ifstream fin("sortare.in");
ofstream fout("sortare.out");
vector<int>copii[50003];
bool viz[50003];
int ans[50003],k;
void bfs(int a)
{
viz[a]=1;
for(int y:copii[a])
if(!viz[y])
bfs(y);
ans[k]=a;
k++;
}
int main()
{
int n,m;
fin>>n>>m;
//copii.resize(n+1);
for(int i=0;i<m;i++)
{
int x,y;
fin>>x>>y;
copii[x].push_back(y);
}
for(int i=1;i<=n;i++)
{
if(viz[i]==0)
{
bfs(i);
}
}
for(int i=k -1;i>=0;i--)fout<<ans[i]<<" ";
return 0;
}