[BOJ] 점프 점프

Minsu Han·2023년 3월 8일
0

알고리즘연습

목록 보기
93/105

코드

import sys
from collections import deque
input = sys.stdin.readline

n = int(input())
nums = list(map(int, input().split()))
visited = [0]*n

q = deque()
q.append((0, 0))    # (index, jump_time)
visited[0] = 1

while q:
    idx, t = q.popleft()
    if idx == n-1:
        print(t)
        exit(0)
    for i in range(1, nums[idx]+1):
        if (idx+i) < n and not visited[idx+i]:
            visited[idx+i] = 1
            q.append((idx+i, t+1))

print(-1)

결과

image


풀이 방법

  • BFS로 간단하게 해결할 수 있는 문제였다.

profile
기록하기

0개의 댓글