본문 바로가기
코딩테스트/Python

[python 구름] 구름이의 여행

by nahkim 2023. 5. 23.

📜 접근 방법

인접 리스트로 그래프를 표현한다. BFS 방식을 사용한다.

 

 

 

❌ 실패 코드

 

✅ 정답 코드

from collections import deque
import sys
input = sys.stdin.readline

n, m, k = map(int, input().split())

graph = [[] for _ in range(n + 1)]

for _ in range(m):
	u, v = map(int, input().split())
	
	graph[u].append(v)
	graph[v].append(u)

distance = [ 9**9 for _ in range(n + 1)]
distance[1] = 0

que = deque()
que.append(1)

while que:
	cur = que.popleft()
	for next in graph[cur]:
		if distance[next] <= distance[cur] + 1:
			continue
		distance[next] = distance[cur] + 1
		que.append(next)
	
if distance[n] <= k:
	print("YES")
else:
	print("NO")

💡알게 된점

'코딩테스트 > Python' 카테고리의 다른 글

[python 구름] 보드 게임  (0) 2023.05.22
[python 구름] 피보나치 수  (0) 2023.05.21
[python 구름] 구름 스퀘어  (0) 2023.05.20
[python 구름] 직사각형 만들기  (0) 2023.05.19
[python 구름] 거스름돈  (0) 2023.05.17