[프로그래머스, 181897] 리스트 자르기 (java)
Problem Solving/Programmers

[프로그래머스, 181897] 리스트 자르기 (java)

728x90

https://school.programmers.co.kr/learn/courses/30/lessons/181897

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

728x90

메모리: 85.4 MB, 시간: 0.05 ms

사용 알고리즘: 구현

import java.util.*;

class Solution {
    public int[] solution(int n, int[] slicer, int[] num_list) {
        
        int a = slicer[0], b = slicer[1], c = slicer[2];
        
        int[] answer;
        
        if(n == 1) answer = Arrays.copyOfRange(num_list, 0, b + 1);
        else if(n == 2) answer = Arrays.copyOfRange(num_list, a, num_list.length);
        else if(n == 3) answer = Arrays.copyOfRange(num_list, a, b + 1);
        else {
            answer = new int[(b - a) / c + 1];
            int idx = 0;
            for(int i = a; i <= b; i += c) answer[idx++] = num_list[i];
        }
        
        return answer;
    }
}
728x90