Pagini recente » Cod sursa (job #1773550) | Cod sursa (job #179230) | Cod sursa (job #1296216) | Cod sursa (job #1549068) | Cod sursa (job #698970)
Cod sursa(job #698970)
#include <fstream>
#include <vector>
#include <stack>
#define MAXN 50010
using namespace std;
vector<int>v[MAXN];
stack<int>S;
int n,m;
bool viz[MAXN];
void df(int x)
{
viz[x]=1;
for(int i=0;i<v[x].size();i++)
if(!viz[v[x][i]]) df(v[x][i]);
S.push(x);
}
int main()
{
int x,y;
ifstream fi("sortaret.in");
ofstream fo("sortaret.out");
fi>>n>>m;
for(int i=1;i<=m;i++)
{
fi>>x>>y;
v[x].push_back(y);
}
for(int i=1;i<=n;i++) if(!viz[i]) df(i);
while(!S.empty()) { fo<<S.top()<<" "; S.pop(); }
return 0;
}