Programming 기초/Coding Test

[이코테] 특정 거리의 도시 찾기

코딩상륙작전 2023. 8. 21. 17:40
from collections import deque
n,m,k,x=map(int,input().split())
queue = deque()

for _ in range(m):
    queue.append(tuple(map(int, input().split())))
distance=[0]*(n+1)

# a노드부터 b노드까지
while queue:
    a, b=queue.popleft()
    if distance[b]==0:
        distance[b]=distance[a]+1

exist=False	# k거리만큼 떨어진 도시가 있는가?
for i in range(1, n+1):
    d=distance[i]-distance[x]
    if d == k or d==-k:
        print(i)
        exist=True
if exist==False:
    print(-1)