Cod sursa(job #3364619)

Utilizator flaviussteffflavius stefan flaviussteff Data 7 septembrie 2026 22:51:21
Problema BFS - Parcurgere in latime Scor 0
Compilator py Status done
Runda Arhiva educationala Marime 0.7 kb
from collections import deque

f=open("bfs.in",'r')
w=open("bfs.out",'w')

line=f.readline().split()
n,m,s=int(line[0]),int(line[1]),int(line[2])
a=[[] for _ in range(n+1)]
line=f.readline().split()
while line:
    line=[int(line[i]) for i in range(0,2)]
    a[line[0]].append(line[1])
    line=f.readline().split()

viz=[0 for i in range(n+1)]
dist=[-1 for i in range(n+1)]

viz[s]=1
dist[s]=0

q = deque([s])

while q:
    nod_curent = q.popleft()
    for vecin in a[nod_curent]:
        if viz[vecin]==0:
            dist[vecin]=dist[nod_curent]+1
            viz[vecin]=1
            q.append(vecin)

for i in range(1,len(dist)):
    w.write(str(dist[i])+" ")

f.close()
w.close()