Cod sursa(job #2414852)

Utilizator Mickai69Mihai Voica Mickai69 Data 25 aprilie 2019 10:44:25
Problema Sortare topologica Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main()
{
    int n, m, a, b;
    ifstream fin ("sortaret.in");
    ofstream fout ("sortaret.out");
    fin >> n >> m;
    vector<vector<int>> adj(n + 1);
    vector<int> lista, intern(n + 1);
    for (int i = 0; i < m; i++)
    {
        fin >> a >> b;
        adj[a].push_back(b);
        intern[b]++;
    }
    for (int i = 1; i <= n; i++){
        if (intern[i] == 0)
        {
            lista.push_back(i);

            for(auto j : adj[i])
                intern[j]--;
        }
    }
    for (auto i : lista)
        fout << i << " ";

    return 0;
}