Pagini recente » Cod sursa (job #1130815) | Cod sursa (job #1854687) | Cod sursa (job #2615379) | Cod sursa (job #563181)
Cod sursa(job #563181)
#include <fstream>
#include <vector>
using namespace std;
//ifstream fi ("sortaret.in");
//ofstream fo ("sortaret.out");
const int DIM = 50005;
int N, M, viz[DIM], R[DIM];
vector <int> V[DIM];
void dfs (int n)
{
R[++R[0]] = n;
viz[n] = 1;
for (int i = 0, f; i < (int)V[n].size(); i++)
{
f = V[n][i];
if (!viz[f])
dfs (f);
}
}
int main ()
{
freopen ("sortaret.in", "r", stdin);
freopen ("sortaret.out", "w", stdout);
scanf ("%d%d", &N, &M);
//fi >> N >> M;
for (int i = 0, a, b; i < M; i++)
{
scanf ("%d%d", &a, &b);
//fi >> a >> b;
V[a].push_back (b);
}
for (int i = 1; i <= N; i++)
if (!viz[i])
dfs (i);
for (int i = 1; i <= R[0]; i++)
printf ("%d ", R[i]);
//fo << R[i] << ' ';
return 0;
}