Adventure of 빠타박스
article thumbnail
728x90
728x90
SMALL

문제 설명

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

 

제한사항

  • 2 ≤ num_list의 길이 ≤ 10
  • 1 ≤ num_list의 원소 ≤ 9

 

입출력 예num_listresult

[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합니다.

 


#include <vector>

using namespace std;

vector<int> solution(vector<int> num_list) {
    vector<int> answer = num_list;
    int LastE = answer.back();
    int PrevE = answer[answer.size() - 2];
    
    if(LastE > PrevE){
        answer.push_back(LastE - PrevE);
    }
    else{
        answer.push_back(LastE * 2);
    }
    
    return answer;
}

 

 


 

주어진 정수 리스트 num_list에 대해, solution 함수는 먼저 answer 벡터를 num_list로 초기화합니다.

 

그런 다음, answer.back()을 사용하여 answer 벡터의 마지막 요소인 LastE를 얻고, answer.size() - 2를 사용하여 answer 벡터에서 두 번째로 마지막 요소인 PrevE를 얻습니다.

 

조건문을 사용하여 마지막 요소인 LastE가 이전 요소인 PrevE보다 큰지 확인합니다. 만약 그렇다면, LastE - PrevE 값을 answer 벡터에 추가합니다. 그렇지 않은 경우, LastE * 2 값을 answer 벡터에 추가합니다.

 

마지막으로, 수정된 answer 벡터를 반환합니다.

728x90
728x90
LIST
profile

Adventure of 빠타박스

@PPATABOX

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!