문제 : 45. Jump Game II
문제는 nums[0]에서 j만큼 점프할 수 있고( nums[i + j] ) 최소한의 점프로 nums[i-1]에 도달하는 경우의 수를 구한 후 점프 횟수를 반환하는 것이다.
조건은 다음과 같다.
class Solution:
def jump(self, nums: List[int]) -> int:
jumpCnt = [0] * len(nums)
for i in range(len(nums)):
for j in range(1, nums[i]+1): # 0 <= j <= nums[i]
if i + j >= len(nums):
break
if jumpCnt[i + j] == 0 or jumpCnt[i+j] > jumpCnt[i] + 1:
jumpCnt[i + j] = jumpCnt[i] + 1
return jumpCnt[-1]
if jumpCnt[i + j] == 0 or jumpCnt[i+j] > jumpCnt[i] + 1:
jumpCnt[i + j] = jumpCnt[i] + 1