class Solution {
public int[] solution(int[] num_list) {
int[] answer = {};
return answer;
}
}
해결법
방법 1
class Solution {
public int[] solution(int[] num_list) {
int[] answer = new int[num_list.length + 1];
int last = 0;
if (num_list[num_list.length-1] > num_list[num_list.length-2]) {
last = num_list[num_list.length-1] - num_list[num_list.length-2];
} else {
last = num_list[num_list.length-1] * 2;
}
for (int i = 0; i < num_list.length; i++) {
answer[i] = num_list[i];
}
answer[answer.length - 1] = last;
return answer;
}
}
- 배열에서 추가된 마지막 인덱스를 만들고, 이를 원래 배열과 합쳐서 출력하는 게 핵심
방법 2
class Solution {
public int[] solution(int[] num_list) {
int[] answer = new int[num_list.length+1];
for (int i = 0; i < num_list.length; i++) {
answer[i] = num_list[i];
}
int last = num_list[num_list.length-1];
int before = num_list[num_list.length-2];
answer[answer.length-1] = last > before ? last - before : last*2;
return answer;
}
}
- 미리 마지막 인덱스를 비우고 앞에 인덱스들은 채워둔다.
마지막 두 원소 Lv. 0