[Python] 백준12851 숨바꼭질 2
문제
예제 입력
코드
from collections import deque
n, k = map(int, input().split())
arr = [float("inf")] * 100001
ans = 0
def bfs(st):
global ans
q = deque()
q.append(st)
arr[st] = 0
while q:
pos = q.popleft()
if pos == k:
ans += 1
for new in [pos-1, pos+1, pos*2]:
if 0 <= new <= 100000 and arr[new] >= arr[pos] + 1:
arr[new] = arr[pos] + 1
q.append(new)
bfs(n)
print(arr[k])
print(ans)
# TypeError: 'int' object is not subscriptable
# 정수형(int)에서 ‘인덱싱' 및 ‘슬라이싱'을 시도하려고 할 때 만나는 에러
설명
파이썬을 통해서 사용자로부터 입력받아 BFS알고리즘을 사용하여 숨바꼭질 2를 구현했습니다.