배열 자르기

반즈·2023년 11월 15일

프로그래머스 입문

목록 보기
6/51

문제 설명

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

입출력 예


자바

나의 풀이 (Arrays.copyOfRange)

import java.util.*;

class Solution {
    public int[] solution(int[] numbers, int num1, int num2) {
        int[] answer = {};
        answer = Arrays.copyOfRange(numbers, num1, num2 + 1);
        return answer;
    }
}

참고 풀이 1 (for문)

class Solution {
    public int[] solution(int[] numbers, int num1, int num2) {
        int[] answer = new int[num2 - num1 + 1];

        for (int i = num1; i <= num2; i++) {
            answer[i -num1] = numbers[i];
        }

        return answer;
    }
}

참고 풀이 2 (IntStream)

import java.util.stream.IntStream;

class Solution {
    public int[] solution(int[] numbers, int num1, int num2) {
        return IntStream.rangeClosed(num1, num2).map(i -> numbers[i]).toArray();
    }
}

자바스크립트

나의 풀이 (slice)

function solution(numbers, num1, num2) {
    var answer = [];
    answer = numbers.slice(num1, num2 + 1)
    return answer;
}

참고 풀이 1 (splice)

function solution(numbers, num1, num2) {
    return numbers.splice(num1, num2-num1+1);
}

참고 풀이 2 (for문)

function solution(numbers, num1, num2) {
    var answer = [];

    for (let i = num1; i < num2+1; i++) {
        answer.push(numbers[i])
    }

    return answer;
}
profile
나를 채우다

0개의 댓글