Pagini recente » Cod sursa (job #1314266) | Cod sursa (job #1746766) | Cod sursa (job #2956290) | Cod sursa (job #371787) | Cod sursa (job #2506739)
#include <stdio.h>
#include <vector>
#define MAXN 50000
using namespace std;
vector<int> G[MAXN + 1];
char viz[MAXN + 1];
void sort_top( int node, FILE *fout ) {
int i;
viz[node] = 1;
for ( i = 0; i < G[node].size(); ++i ) {
if ( viz[G[node][i]] != 1 ) {
sort_top( G[node][i], fout );
}
}
fprintf( fout, "%d ", node );
}
int main() {
FILE *fin = fopen( "sortaret.in", "r" );
FILE *fout = fopen( "sortaret.out", "w" );
int n, m, i, x, y;
fscanf( fin, "%d%d", &n, &m );
for ( i = 0; i < m; ++i ) {
fscanf( fin, "%d%d", &x, &y );
G[y].push_back( x );
}
for ( i = 1; i <= n; ++i ) {
sort_top( i, fout );
}
fclose( fin );
fclose( fout );
return 0;
}