[리트코드] 45. Jump Game II / Javascript

2021. 9. 28. 20:55·LeetCode
반응형

문제주소 :https://leetcode.com/problems/jump-game-ii/


<문제 설명>

더보기

45. Jump Game II

Medium

5835222Add to ListShare

Given an array of non-negative integers nums, you are initially positioned at the first index of the array.

Each element in the array represents your maximum jump length at that position.

Your goal is to reach the last index in the minimum number of jumps.

You can assume that you can always reach the last index.

 

Example 1:

Input: nums = [2,3,1,1,4] Output: 2 Explanation: The minimum number of jumps to reach the last index is 2. Jump 1 step from index 0 to 1, then 3 steps to the last index.

Example 2:

Input: nums = [2,3,0,1,4] Output: 2

 

Constraints:

  • 1 <= nums.length <= 104
  • 0 <= nums[i] <= 1000

 

<풀이법>

▒ 한줄 개념: dp ▒ 

기본적인 dp 문제 중 하나입니다.

문제 풀이법은 다음과 같습니다.

 

1. dp 배열 생성

2. nums를 반복문으로 탐색

  2-1. num값 만큼 반복문을 진행하며 경우 확인 (num = 2일 경우, 1칸 뛰었을 때/2칸 뛰었을 경우 존재)

  2-2. n만큼 점프한 칸의 값(dp[i+n])이 현재 칸까지의 최소 점프횟수 + 1(dp[i]+1) 보다 클 경우, 값 갱신(dp[i+n] = dp[i]+1)

3. dp의 마지막 값을 반환

 

<코드(Javascript)>

/**
 * @param {number[]} nums
 * @return {number}
 */
var jump = function(nums) {
    const dp = [0];
    for(let i = 1; i < nums.length; i++){
        dp[i] = Number.MAX_VALUE;
    }
    
    nums.map((num, i) => {
        for(let j = 1; j <= num && i+j < nums.length; j++){
            dp[i+j] = dp[i] + 1 < dp[i+j] ? dp[i] + 1 : dp[i+j];
        }
    })
    
    return dp[nums.length - 1];
};

 

 

더 많은 코드 보기(GitHub) : github.com/dwkim-97/CodingTest

 

 

반응형
저작자표시 (새창열림)

'LeetCode' 카테고리의 다른 글

[리트코드] 967. Numbers With Same Consecutive Differences / Javascript  (0) 2021.09.30
[리트코드] 1306. Jump Game III / Javascript  (0) 2021.09.29
[리트코드] 336. Palindrome Pairs / Javascript  (0) 2021.09.15
[리트코드] 5. Longest Palindromic Substring / Javascript  (0) 2021.09.09
[리트코드] 2. Add Two Numbers / Javascript  (0) 2021.09.09
'LeetCode' 카테고리의 다른 글
  • [리트코드] 967. Numbers With Same Consecutive Differences / Javascript
  • [리트코드] 1306. Jump Game III / Javascript
  • [리트코드] 336. Palindrome Pairs / Javascript
  • [리트코드] 5. Longest Palindromic Substring / Javascript
개발하는 사막여우
개발하는 사막여우
개발개발 주저리주저리
    반응형
  • 개발하는 사막여우
    개발하는 사막여우
    개발하는 사막여우
  • 전체
    오늘
    어제
    • All (311)
      • Books (13)
        • 읽기 좋은 코드가 좋은 코드다 (13)
      • Study (6)
        • Blockchain (3)
        • Algorithm (3)
      • Baekjoon (36)
      • Programmers (166)
      • LeetCode (15)
      • Open Source (1)
        • Youtube Popout Player (1)
      • Language (32)
        • Python (9)
        • JS (8)
        • Java (5)
        • HTML (6)
        • CSS (4)
      • Library & Framework (15)
        • React.js (15)
      • IDE (2)
        • IntelliJ (2)
      • Airdrop (9)
      • Tistory (2)
      • etc.. (7)
        • Cozubi (6)
        • lol-chess (0)
  • 블로그 메뉴

    • Github
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    알고리즘문제풀이
    코주비
    코인줍줍
    클린 코드
    Python
    Java
    카카오 코딩테스트
    읽기 좋은 코드가 좋은 코드다
    파이썬
    카카오 공채
    Cozubi
    2018 KAKAO BLIND RECRUITMENT
    신규 코인 에어드랍
    백준
    프로그래머스 위클리 챌린지
    코딩테스트연습
    카카오 알고리즘 문제
    클린 코드 작성법
    programmers
    프로그래머스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
개발하는 사막여우
[리트코드] 45. Jump Game II / Javascript
상단으로

티스토리툴바