Cod sursa(job #1712156)

Utilizator eusebiu_gageaGagea Eusebiu-Andrei eusebiu_gagea Data 2 iunie 2016 10:41:43
Problema Sortare topologica Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
vector <int> v[50001];
int fr[50001];

int main()
{
    int n,m,i,j,a,b,ok=0;
    f>>n>>m;
    for(i = 1; i <= m; i++) {
        f>>a>>b;
        v[a].push_back(b);
        fr[b]++;
    }
    while(!ok) {
        ok=1;
        for(i = 1; i <= n; i++) {
            if(!fr[i]) {
                fr[i]=-1;
                ok=0;
                for(j = 0; j<v[i].size(); j++) {
                    fr[v[i][j]]--;
                }
                g<<i<<" ";
            }
        }
    }
    g<<"\n";
    return 0;
}