Cod sursa(job #3318479)

Utilizator mariuckkaTanasoiu Maria Alexia mariuckka Data 28 octombrie 2025 12:51:49
Problema BFS - Parcurgere in latime Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <queue>
using namespace std;
ifstream f("bfs.in");
ofstream g("bfs.out");
queue < int > q;
vector< int> L[100001];
int n,m,i,x,s,n1,n2,dist[100001];
int parinte(int x)
{
    return x/2;
}
int main()
{
   f>>n>>m>>s;
   for(i=1;i<=m;++i)
   {
      f>>n1>>n2;
      L[n1].push_back(n2);
   }
    for(i=1;i<=n;++i)
        dist[i]=-1;
   dist[s]=0;
   q.push(s);
   //g<<x<<' ';
   while(!q.empty())

        {
            int nod=q.front();
            q.pop();
            for(auto vecin:L[nod])
                if(dist[vecin]==-1)
                {

                    dist[vecin]=dist[nod]+1;
                    //g<<i<<' ';
                    q.push(vecin);
                }
        }
    for(i=1;i<=n;++i)
    {
        if(dist[i]==-1)
            g<<-1<<' ';
        else

           g<<dist[i]<<' ';
    }





    return 0;
}