프로그래머스Lv0 - 마지막 두 원소

감자·2023년 7월 22일
0

Q.정수 리스트 num_list가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요.

  1. int[] answer = new int[num_list.length+1]; 를 설정해야 문제에서 주어진 조건에 따라 마지막 원소가 그 전 원소보다 크지 않을 경우 마지막 원소를 두 배로 늘리는 작업을 수행하기 때문이다.

  2. for문을 사용하여 num_list의 모든 원소들을 answer에 더해준다. 이렇게 함으로써 answer 에 기존 num_list의 갑싱 그대로 저장하게 된다

  3. answer[answer.length-1]=rs; 를 통해 answer 배열의 마지막 원소를 rs 값을 저장한다. 조건문에서 구한 결과를 answer 배열의 마지막 원소로 추가하는 것을 의미한다.

class Solution {
    public int[] solution(int[] num_list) {
        int[] answer = new int[num_list.length+1];
        int rs = 0;
        
        if(num_list[num_list.length-1]>num_list[num_list.length-2]){
            rs = num_list[num_list.length-1]-num_list[num_list.length-2];
        }else{
            rs = 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] = rs;
        return answer;
    }
}

오마이갓...

profile
코딩하는 감자

0개의 댓글