Cod sursa(job #932794)

Utilizator robertstrecheStreche Robert robertstreche Data 29 martie 2013 11:37:36
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.99 kb
# Include <iostream>
# Include <fstream>

/ / Reconstitui ordinea principiile relatii
using namespace std;
ifstream f;
int i, j, pred [100], v [100];
int suc [100] [100], nr [100], n, t = 0;

int caut (int pred [], int n)
{Int i;
pentru (i = 1; i <= n; i + +)
   în cazul în care (Pred [i] == 0 && v [i]) întoarce i;
return 0;
}

int main ()
{
    f.open ("rel.txt");
    în timp ce (f >> i >> j)
    {Pred [j] + +;
     nr [i] + +;
     suc [nr [i]] [i] = j;
     în cazul în care (i> n) n = i;
     în cazul în care (j> n) = n j;
    }
    pentru (i = 1; i <= n; i + +) v [i] = 1;

    do
    {I = caut (Pred, n);
     în cazul în care (i! = 0) în cazul în care (v [i]) {
              cout << i << ""; T + +;
              v [i] = 0;
              pentru (j = 1; j <= nr [i]; j + +)
                 Pred [suc [j] [i]] -;
              }
}

    în timp ce (i! = 0 && t <= n);
    dacă (t <n) cout << "Nu avem solutie";
    f.close ();
    return 0;
}