https://www.acmicpc.net/problem/5014
from collections import deque
import sys
f,s,g,u,d=map(int,input().split())
q=deque()
q.append((s,0))
check=[False]*(f+1)
check[s]=True
while q:
now,cnt=q.popleft()
if now==g:
print(cnt)
sys.exit(0)
for next in [now+u,now-d]:
if 1<=next<=f and not check[next]:
q.append((next,cnt+1))
check[next]=True
print("use the stairs")
'코딩 테스트 > 백준 강의 연습편' 카테고리의 다른 글
BFS) 2234.성곽 (0) | 2022.06.28 |
---|---|
BFS) 4991.로봇 청소기 (0) | 2022.06.25 |
BFS) 14395. 4연산 (0) | 2022.06.11 |
BFS) 10026.적록색약 (0) | 2022.06.10 |
BFS) 1963. 소수 경로 (0) | 2022.06.10 |