Pagini recente » Cod sursa (job #770340) | Cod sursa (job #1032158) | Cod sursa (job #2250880) | Cod sursa (job #1634072) | Cod sursa (job #569259)
Cod sursa(job #569259)
#include<fstream>
#include<vector>
#include<queue>
using namespace std;
vector<int> lista[50005];
int NrVf;
queue<int> brr;
int Vizited[50005];
int apel;
void DFS(int node)
{
Vizited[node] = ++apel;
brr.push(node);
for (int i=0; i<lista[node].size(); i++)
if (!Vizited[lista[node][i]]) DFS(lista[node][i]);
}
int main()
{
ifstream in ("sortaret.in");
ofstream out ("sortaret.out");
int NrM;
in>>NrVf>>NrM;
for (int x,y; NrM>0; NrM--)
{
in>>x>>y;
lista[x].push_back(y);
}
for (int i=1; i<=NrVf; i++)
if (!Vizited[i]) DFS(i);
for (; !brr.empty(); brr.pop())
out<<brr.front()<<" ";
in.close();
out.close();
return 0;
}