Pagini recente » Cod sursa (job #2743428) | Cod sursa (job #897757) | Cod sursa (job #295063) | Cod sursa (job #3178977) | Cod sursa (job #2642046)
#include<bits/stdc++.h>
using namespace std;
vector< vector<int> > nodSiMuchii;
ifstream in("sortaret.in");
ofstream out("sortaret.out");
vector<int> gasite;
void rezolvare( int nod )
{
out<<nod<<" ";
gasite[nod] = -1;
for ( int i = 0 ; i < nodSiMuchii[nod].size() ; i++ ){
if ( gasite[nodSiMuchii[nod][i]] == 0 )
rezolvare(nodSiMuchii[nod][i]);
}
}
int vc[50005];
int main()
{
int n,m;
in>>n>>m;
nodSiMuchii.resize(n+1);
gasite.resize(n+1);
for ( int i = 1 ; i <= m ; i++ ){
int a,b;
in>>a>>b;
nodSiMuchii[a].push_back(b);
vc[b]++;
}
for ( int i = 1 ; i <= n ; i++ ){
if ( vc[i] == 0 ){
rezolvare(i);
}
}
return 0;
}