Pagini recente » Cod sursa (job #1642505) | Cod sursa (job #2598248) | Cod sursa (job #2209172) | Cod sursa (job #48088) | Cod sursa (job #1181150)
#include <fstream>
#include <vector>
#include <stack>
#define pb push_back
#define dim 50001
using namespace std;
stack <int> Q;
vector<int> v[dim];
bool seen[dim];
int i,m,n;
void dfs(int a){
int i;
for(i=0;i<int(v[a].size());i++){
if(!seen[v[a][i]]){
seen[v[a][i]]=true;
dfs(v[a][i]);
Q.push(v[a][i]);
}
}
}
int main(){
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int a,b;
f>>n>>m;
for(i=1;i<=m;i++){
f>>a>>b;
v[a].pb(b);
}
for(i=1;i<=n;i++){
if(!seen[i]){
dfs(i);
Q.push(i);
}
}
for(i=1;i<=n;i++){
g << Q.top() << " ";
Q.pop();
}
}