Cod sursa(job #1218703)

Utilizator RaduGabriel2012Dinu Radu RaduGabriel2012 Data 12 august 2014 12:46:11
Problema Sortare topologica Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
 vector <int> vec[50005];
 queue <int> q;
  int n,m,use[50005];
int main()
{ int i,j,x,y,nod;
    f>>n>>m;
    for(i=1;i<=m;i++)
     {  f>>x>>y;
        vec[x].push_back(y);
     }
     for(i=1;i<=n;i++)
      if (!use[i])
       {
          q.push(i); use[i]=1; g<<i<<" ";
          while(!q.empty())
          { nod=q.front(); q.pop();
             for(j=0;j<vec[nod].size();j++)
               if (!use[vec[nod][j]])
                { use[vec[nod][j]]=1;
                  g<<vec[nod][j]<<" ";
                  q.push(vec[nod][j]);
                }
          }
       }
    return 0;
}