Cod sursa(job #2484175)

Utilizator OvidRata Ovidiu Ovid Data 30 octombrie 2019 18:51:48
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include<bits/stdc++.h>
using namespace std; 
#define pb push_back
ifstream fin("sortaret.in"); ofstream fout("sortaret.out");


vector<bool> r, l;
vector<vector<int> > g; int x, y, s;
int m, n;


void dfs(int s){
l.pb(s);

    for( auto i=g[s].begin(); i!=g[s].end(); i++){
        dfs(*i);
        
    }
}




int main(){
fin>>n>>m;
g.resize(n+1);
r.assign(n+1, 0);
for(int i=1; i<=m; i++){
    fin>>x>>y;
    g[x].pb(y);
    r[y]=1;
}

for(int i=1; i<r.size(); i++){
    if(r[i]==0){s=i;break;}
}

dfs(s);

for(int i=0; i<l.size(); i++){
    fout<<l[i]<<' ';
}
    
}