최대 1 분 소요

문제 설명

프로그래머스 181927번 마지막 두 원소

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

제한 사항

  • 2 ≤ num_list의 길이 ≤ 10
  • 1 ≤ num_list의 원소 ≤ 9
  • num_list에는 적어도 한 개씩의 짝수와 홀수가 있습니다.

입출력 예시

예시 1

입출력 1

num_list result
[2, 1, 6] [2, 1, 6, 5]
[5, 2, 1, 7, 5] [5, 2, 1, 7, 5, 10]

입출력 예 설명 1

  • 마지막 원소인 6이 그전 원소인 1보다 크기 때문에 6 - 1인 5를 추가해 return합니다.

입출력 예 설명 2

  • 마지막 원소인 5가 그전 원소인 7보다 크지 않기 때문에 5의 두 배인 10을 추가해 return합니다.

코드 구현

Python

def solution(num_list):
    last = num_list[-1]
    last_2 = num_list[-2]  
    
    return num_list.append(last - last_2) if last > last_2 else num_list.append(last * 2)

Java

class Solution {
    public int solution(int[] num_list) {

        StringBuilder even = new StringBuilder();
        StringBuilder odd = new StringBuilder();

        for (int i: num_list) {
            if (i % 2 == 0) {
                even.append(i);
            } else {
                odd.append(i);
            }
        }
        return Integer.valueOf(even.toString()) + Integer.valueOf(odd.toString());
    }
}