알고리즘 문제들 으악/백준

[python]5014번 스타트링크, 값 범위 설정의 중요성

빈나 2023. 1. 20. 23:16
반응형

단순 bfs문제로 나이트 이동 문제와 똑같았다.

그러나 오랜만에 풀어서 그런지

다음 노드로 이동할때의 값 범위 설정을 세심하게 설정하지 못했다.

층수가 1층부터 top층까지 있을 때

다음 층수는 무조건 0보다 높은 자연수이다.

그러나 다음 노드 탐색시 0층까지도 탐색가능하게 만들어 틀렸다.

from collections import deque
top,start,des,up,down = map(int,input().split())
que = deque()
visit = [0 for i in range(top+1)]
que.append((start,0))
if start == des:
    print(0)
    exit(0)
while que:
    cur = que.popleft()
    for next in [cur[0]+up,cur[0]-down]:
        if 0<next<top+1 and not visit[next]:
            if next == des:
                print(cur[1]+1)
                exit(0)
            visit[next] =1
            que.append((next,cur[1]+1))
print('use the stairs')

 

반응형