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합니다.
- 마지막 원소인 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
'🅴🆃🅲 > CodingTest' 카테고리의 다른 글
[Programmers]_이어 붙인 수[C++]_기초 (0) | 2023.06.19 |
---|---|
[백준]_17298번_오큰 수 구하기[C++] (0) | 2023.05.27 |
[백준]_1874번_스택으로 수열 만들기[C++]☆중요 (0) | 2023.05.12 |