[백준 1697번] 숨바꼭질 - 파이썬
import sys
input=sys.stdin.readline
from collections import deque
n,k=map(int,input().split())
# 움직일수 있는 최대 좌표 100000
max_num=100000
visited=[0]*(max_num+1)
def bfs():
q=deque()
# 출발위치 큐에 삽입
q.append(n)
while q:
x=q.popleft()
# 위치가 동생의 위치와 같다면 종료
if x==k:
print(visited[x])
break
# 이동 할 수 있는 방향 정의
for i in (x-1,x+1,x*2):
if 0<=i<=max_num and visited[i]==0:
visited[i]=visited[x]+1
q.append(i)
bfs()
문제가 조금이라도 꼬이면 풀지 못한다...분발하자!!
Author And Source
이 문제에 관하여([백준 1697번] 숨바꼭질 - 파이썬), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@boyfromthewell/백준-1697번-숨바꼭질-파이썬저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)