Cod sursa(job #3307073)

Utilizator vlad7654vladimir manescu vlad7654 Data 16 august 2025 21:47:04
Problema Sortare topologica Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
const int NMAX=5e4;
vector<int> mat[NMAX+5];
vector<bool> vizitat(NMAX+5);
vector<int> ans;
void bfs(int nod){
    vizitat[nod]=1;
    for(auto it:mat[nod]){
        if(vizitat[it]==0){
            bfs(it);
        }
    }
    ans.push_back(nod);
}
int main(){
    int n, m;
    fin>>n>>m;
    int radacina=0;
    for(int i=1;i<=m;i++){
        int x, y;
        fin>>x>>y;
        mat[x].push_back(y);
    }
    for(int i=1;i<=n;i++){
        if(vizitat[i]==0){
            bfs(i);
        }
    }
    reverse(ans.begin(),ans.end());
    for(auto it:ans){
        fout<<it<<' ';
    }
}