Cod sursa(job #311358)

Utilizator adrianaqtreus adriana adrianaqt Data 3 mai 2009 12:22:49
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include<iostream.h>
#include<fstream.h>
ifstream f("sortaret.in");
ofstream g("sortaret.out");
unsigned a[10][10],n,s[100],pre[100],nr,ok=0,i,j;
void creare()
{f>>n;
while(f>>i>>j)
a[i][j]=1;

f.close();
}
void df(int nod)
{ s[nod]=1;
   pre[++nr]=nod;
for(int k=1;k<=n;k++)
  if(a[nod][k]==1)
    if(s[k]==0)
    df(k);
    else ok=1;
 
}

int main()
{  creare();

   df(1);
   if(ok==1)cout<<"nu poate fi sortat topologic";
   else 
   for(int i=1;i<=nr;i++)g<<pre[i]<<" ";
return 0;}