본문 바로가기

프로그래머스 코딩 기초 트레이닝

프로그래머스 코딩 기초 트레이닝 마지막 두 원소




마지막 두 원소



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


  • answer에 스프레드로 받고 그냥 받으면 push 할 떄에 이차원 배열로 만들어짐
  • 마지막 원소와, 마지막 원소 전이니깐 num_list.length - 1 마지막 원소 num_list.length - 2 마지막 원소 전 을 구하고
  • 삼항연산자로 나온 값을 push 해준다.


function solution(num_list) {
    var answer = [...num_list];
    let sum = num_list[num_list.length - 1] - num_list[num_list.length - 2]
    console.log(num_list[num_list.length - 1] > num_list[num_list.length - 2] ? answer.push(sum): answer.push(num_list[num_list.length - 1] *2))

    return answer;
}

// 다른 사람 방법 구조분해 할당으로 받고 reverse() 뒤집고
// 스프레드 연산자로 받아서 결과 계산
function solution(num_list) {
    const [a, b] = [...num_list].reverse();
    return [...num_list, a > b ? (a-b):a*2];
}