Cod sursa(job #3311364)

Utilizator Floroiu_MariusFloroiu Marius Cristian Floroiu_Marius Data 21 septembrie 2025 15:40:40
Problema Sortare topologica Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int n,m;
int rem[100003];
vector<int> v[100003];
vector<int> rez;
queue<int> q;
int main()
{
    fin>>n>>m;
    while (m--)
    {
        int st,dr;
        fin>>st>>dr;
        rem[dr]++;
        v[st].push_back(dr);
    }
    for (int i=1;i<=n;i++)
        if (rem[i]==0) q.push(i);
    while (!q.empty())
    {
        int nod=q.front();
        q.pop();
        rez.push_back(nod);
        for (auto i:v[nod])
        {
            rem[i]--;
            if (rem[i]==0) q.push(i);
        }
    }
    for (auto i:rez)
        fout<<i<<" ";
    return 0;
}