ALGORITHM/프로그래머스

[프로그래머스 / JavaScript] 배열 자르기

HSYOO 2023. 2. 2. 11:11

문제 설명

정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요.

제한 사항

  • 2 ≤ numbers의 길이 ≤ 30
  • 0 ≤ numbers의 원소 ≤ 1,000
  • 0 ≤num1 < num2 < numbers의 길이

입출력 예

numbers num1 num2 result
[1, 2, 3, 4, 5] 1 3 [2, 3, 4]
[1, 3, 5] 1 2 [3, 5]

입출력 예 설명

입출력 예 #1

  • [1, 2, 3, 4, 5]의 1번째 인덱스 2부터 3번째 인덱스 4 까지 자른 [2, 3, 4]를 return 합니다.

입출력 예 #2

  • [1, 3, 5]의 1번째 인덱스 3부터 2번째 인덱스 5까지 자른 [3, 5]를 return 합니다.

풀이

function solution(numbers, num1, num2) {
    var answer = [];
    
    numbers.forEach((curr, i) => {
        if(i >= num1 && i <= num2) answer.push(curr)
    })
    
    return answer;
}

내 생각 & 아무 말

사실 배열 자르기의 경우 이미 있는 기능들로 충분히 구현이 가능할 것 같았다.

뭔가 알고리즘 문제를 풀고 있는데, 알고리즘 문제 답게 풀어야 하지 않을까 하는 생각에 이미 있는 기능이나 메소드는 없다고 생각하고 코드를 짜려했으나 forEach를 써버리네.. for문 쓸걸..

 

피드백은 언제나 감사합니다.