import java.util.ArrayList;
import java.util.List;
class Solution {
public int[] solution(int n, int[] slicer, int[] num_list) {
List<Integer> list = new ArrayList<>();
if (n == 1) {
for (int i = 0; i <= slicer[1]; i++) {
list.add(num_list[i]);
}
} else if (n == 2) {
for (int i = slicer[0]; i < num_list.length; i++) {
list.add(num_list[i]);
}
} else if (n == 3) {
for (int i = slicer[0]; i <= slicer[1]; i++) {
list.add(num_list[i]);
}
} else {
for (int i = slicer[0]; i <= slicer[1]; i += slicer[2]) {
list.add(num_list[i]);
}
}
int[] answer = list.stream().mapToInt(Integer::intValue).toArray();
return answer;
}
}
결국 각 조건에 대한 반복문을 따로 만들어줬다. 다른 케이스들도 크게 다른점은 없어 보였다. 그래도 슬슬 stream을 통한 List to array가 익숙해지고 있다. (참고 없이 작성할 수 있다)