Cod sursa(job #2390483)

Utilizator VladBadulescuVladBadulescu VladBadulescu Data 28 martie 2019 09:30:49
Problema Sortare topologica Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <bits/stdc++.h>
using namespace std;
#define MAXN 400000
#define pb push_back
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
int N, M, viz[MAXN], deg[MAXN];
vector<int> G[MAXN];
void pog(void)
{
    int i, j, k;
    for(i = 1; i <= N; i++)
    {
        for(j = 1; j <= N; j++)
         if(!viz[j] && deg[j] == 0)
         {
            viz[j] = 1;
            fout<<j<<" ";
            for(k = 0; k < G[j].size(); k++)
                deg[ G[j][k] ]--;
            break ;
         }
    }
}
void citire(void)
{
    int i, a, b;
    fin>>N>>M;
    for(i = 1; i <= M; i++)
    {
        fin>>a>>b;
        G[a].pb(b);
        deg[b]++;
    }
}
int main(void)
{
    citire();
    pog();
    return 0;
}