Cod sursa(job #1587030)

Utilizator UngureanuRuxandraUngureanu Andreea Ruxandra UngureanuRuxandra Data 1 februarie 2016 19:31:09
Problema BFS - Parcurgere in latime Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>
using namespace std;
ifstream f("bfs.in");
ofstream g("bfs.out");
int p,u,i,x,y,n,m,s,c[1000001],v[1000001];
char a[10001][10001];
int main()
{ f>>n>>m>>s;
for(i=1;i<=m;++i)
{f>>x>>y;
 a[x][y]=1;

}
    p=1;
    u=1;
    c[p]=s;
    v[s]=1;
    while(p<=u)
    {x=c[p];
    p++;
    for(i=1;i<=n;++i)
        if(a[x][i]==1&&v[i]==0)
    {   u++;
        c[u]=i;
        v[i]=v[x]+1;
    }

    }
    for(i=1;i<=n;++i)
        if(v[i]==0)
            g<<-1<<' ';
        else
           g<<v[i]-1<<' ';
    return 0;
}