Cod sursa(job #1378105)

Utilizator onica.alexandraOnica Ioana-Alexandra onica.alexandra Data 6 martie 2015 10:33:06
Problema BFS - Parcurgere in latime Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>

using namespace std;
ifstream  in ("bf.in");
ofstream out ("bf.out");
long i,j,n,m,x,y,s,u,p,c[1000],et[1000],a[1000][1000];
void afis()
{
    for(i=1;i<=n;i++)
        out<<et[i]-1<<" ";
}
int main()
{
    in>>n>>m>>s;
    for(i=1;i<=m;i++)
    {
        in>>x>>y;
        a[x][y]=1;
    }
    c[1]=s;
    et[s]=1;
    p=u=1;
    while(p<=u)
    {
        x=c[p];
        for(i=1;i<=n;i++)
           {
            if(et[i]==0 && a[x][i]==1)
                {

                et[i]=et[x]+1;
                u++;
                c[u]=i;
                }


           }
        p++;
    }
    afis();
    return 0;
}