Pagini recente » Cod sursa (job #218917) | Cod sursa (job #88312) | Cod sursa (job #1955595) | Cod sursa (job #2944451) | Cod sursa (job #2025214)
#include <fstream>
#include <vector>
#define DIM 50002
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n, m, x, y, ok, viz[DIM];
vector <int> sol, graf[DIM];
void dfs(int nod)
{
viz[nod] = 1;
for(int i = 0; i < graf[nod].size(); ++ i)
if(viz[graf[nod][i]] == 0)
dfs(graf[nod][i]);
sol.push_back(nod);
}
void afis()
{
for(int i = sol.size() - 1; i >= 0; -- i)
g<<sol[i]<<" ";
}
int main()
{
f>>n>>m;
for(int i = 1; i <= m; ++ i)
{
f>>x>>y;
ok = 1;
for(int j = 0; j < graf[x].size(); ++ j)
if(graf[x][j] == y)
ok = 0;
if(ok == 1)
graf[x].push_back(y);
}
for(int i = 1; i <= n; ++ i)
{
if(viz[i] == 0)
dfs(i);
}
afis();
return 0;
}