문제
풀이
import java.util.*;
class Solution {
public int[] solution(int n, int[] slicer, int[] num_list) {
List<Integer> list = new ArrayList<>();
int a = slicer[0];
int b = slicer[1];
int c = slicer[2];
if(n == 1) {
for(int i = 0; i < b + 1; i++) {
list.add(num_list[i]);
}
} else if(n == 2) {
for(int i = a; i< num_list.length; i++) {
list.add(num_list[i]);
}
} else if(n == 3) {
for(int i = a; i < b + 1; i++) {
list.add(num_list[i]);
}
} else if(n == 4) {
for(int i = a; i < b + 1; i += c) {
list.add(num_list[i]);
}
}
int[] answer = list.stream().mapToInt(x -> x).toArray();
return answer;
}
}
class Solution {
public int[] solution(int n, int[] slicer, int[] num_list) {
int start = n == 1 ? 0 : slicer[0];
int end = n == 2 ? num_list.length - 1 : slicer[1];
int step = n == 4 ? slicer[2] : 1;
int[] answer = new int[(end - start + step) / step];
for (int i = start, j = 0; i <= end; i += step) {
answer[j++] = num_list[i];
}
return answer;
}
}
출처
https://school.programmers.co.kr/learn/courses/30/lessons/181897
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers] Lv.0 / 배열 만들기 3 / Java (1) | 2023.12.05 |
---|---|
[Programmers] Lv.0 / 첫 번째로 나오는 음수 / Java (2) | 2023.12.05 |
[Programmers] Lv.0 / 가까운 1 찾기 / Java (0) | 2023.12.04 |
[Programmers] Lv.0 / 카운트 다운 / Java (0) | 2023.12.01 |
[Programmers] Lv.0 / 글자 지우기 / Java (0) | 2023.12.01 |
댓글