Pagini recente » Cod sursa (job #823825) | Statistici Elsie Ward (6giannac74100hh4) | Cod sursa (job #2538189) | Cod sursa (job #1646291) | Cod sursa (job #1026504)
#include <fstream>
#include <vector>
using namespace std;
const int ct = 50002;
vector< vector<int> > much;
vector<int> sol;
int marc[ct];
int n,m;
int a,b;
ifstream f("sortaret.in");
ofstream h("sortaret.out");
void citire()
{
f>>n>>m;
much.resize(n+1);
for(int i=0;i<m;++i)
{
f>>a>>b;
much[a].push_back(b);
}
f.close();
}
void visit(int n)
{
if(marc[n]==1)
return;
else if(marc[n] == 0)
{
for(unsigned int i=0;i<much[n].size();++i)
visit(much[n][i]);
marc[n] = 2;
sol.push_back(n);
}
}
void solve()
{
for(int i=1;i<=n;++i)
{
if(marc[i]==0)
visit(i);
}
for(int i=n-1;i>=0;--i)
h<<sol[i]<<" ";
}
int main()
{
citire();
solve();
return 0;
}