N

(Leet Code JS)Jump Game 본문

Leet Code 알고리즘

(Leet Code JS)Jump Game

naeunchan 2021. 10. 4. 10:18
728x90
반응형

55. Jump Game

 

You are given an integer array nums. You are initially positioned at the array's first index, and each element in the array represents your maximum jump length at that position.

Return true if you can reach the last index, or false otherwise.

 

Example 1:

Input: nums = [2,3,1,1,4] Output: true Explanation: Jump 1 step from index 0 to 1, then 3 steps to the last index.

Example 2:

Input: nums = [3,2,1,0,4] Output: false Explanation: You will always arrive at index 3 no matter what. Its maximum jump length is 0, which makes it impossible to reach the last index.

 

Constraints:

  • 1 <= nums.length <= 104
  • 0 <= nums[i] <= 105
const canJump = (nums) => {
    const length = nums.length - 1;
    let going = 0;
    
    // size가 1인 배열 가지치기
    if(!length){
        return true;
    }
    
    for(let i = 0; i < length; i++){
        going = Math.max(going, i + nums[i]);
        
        // 다음 위치와 현재 위치가 같으면 false
        if(going === i){
            return false;
        }
        
        // 도착지점에 도달하면 true
        if(going >= length){
            return true;
        }
    }
    
    return true;
};
728x90
반응형

'Leet Code 알고리즘' 카테고리의 다른 글

(Leet Code JS)Maximum Subarry  (0) 2021.10.12
(Leet Code JS)Gas Station  (0) 2021.10.04
(Leet Code JS)Array Partition 1  (0) 2021.10.01
(Leet Code JS)N-Queens  (0) 2021.09.24
(Leet Code JS)Combinations  (0) 2021.09.23