Pagini recente » Cod sursa (job #2096371) | Cod sursa (job #1256901) | Cod sursa (job #2039687) | Cod sursa (job #598058) | Cod sursa (job #2277452)
#include <bits/stdc++.h>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
const int NMAX=5e4+5;
vector <int> G[NMAX], A;
int N, M, i, X, Y;
bool Sel[NMAX];
void DFS (int X)
{
A.push_back(X);
Sel[X]=true;
for(int i=0; i<G[X].size(); i++)
if(!Sel[G[X][i]])
DFS(G[X][i]);
}
int main()
{
f>>N>>M;
for(i=1; i<=M; i++)
{
f>>X>>Y;
G[X].push_back(Y);
}
for(i=1; i<=N; i++)
sort(G[i].begin(), G[i].end());
for(i=1; i<=N; i++)
if(!Sel[i])
DFS(i);
for(i=0; i<A.size(); i++)
g<<A[i]<<' ';
g<<'\n';
return 0;
}