BOJ16928 뱀과 사다리 게임
문제
BOJ16928 뱀과 사다리 게임
실버I | 백준 16928 | Python3 파이썬 풀이
알고리즘
사다리와 뱀은 딕셔너리에 저장해놓는다.
나머지는 BFS를 이용해 모든 칸을 탐색하며 끝 칸에 도착하게 되는 노드의 순서를 출력한다.
코드
import sys
from collections import deque
input = sys.stdin.readline
def BFS():
queue = deque()
min_count = 1000000
curr = 0
visited[curr] = True
queue.append([curr, 0])
while queue:
curr, count = queue.popleft()
if curr == 99:
min_count = min(count, min_count)
return min_count
for i in range(1, 7):
if curr + i < 100:
if not visited[curr + i]:
if curr + i in snake.keys():
queue.append([snake[curr + i], count + 1])
visited[snake[curr + i]] = True
else:
queue.append([curr + i, count + 1])
visited[curr + i] = True
return min_count
N, M = map(int, input().split())
table = [0 for _ in range(100)]
snake = dict()
visited = [False for _ in range(100)]
for n in range(N + M):
x, y = map(int, input().split())
snake[x - 1] = y - 1
print(BFS())
결과
Author And Source
이 문제에 관하여(BOJ16928 뱀과 사다리 게임), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@leehe228/boj16928저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)