728x90
문제 설명
정수 리스트 num_list가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요.
제한사항
- 2 ≤ num_list의 길이 ≤ 10
- 1 ≤ num_list의 원소 ≤ 9
입출력 예
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합니다.
나의 풀이 1.
def solution(num_list):
answer = []
for i in range(len(num_list)):
answer.append(num_list[i])
for i in range(len(answer)):
if answer[-1] > answer[-2]:
answer.append(answer[-1] - answer[-2])
break
else :
answer.append(int(answer[-1]) * 2)
break
return answer
처음 답에 주어진 answer를 수정하지 않고 풀었다.
삼항연산자를 이용해 조금 더 깔끔하게 풀 수 있을 것 같아서 다시 풀어보았는데
정답처리 되어서 짧게 작성한 코드도 같이 올려보고자 한다.
나의 풀이 2.
def solution(num_list):
num_list.append(num_list[-1]-num_list[-2] if num_list[-1] > num_list[-2] else num_list[-1]*2)
return num_list
728x90
'Coding Test' 카테고리의 다른 글
[CT] Leet Code 20. Valid Parentheses python3 ver. (0) | 2023.09.28 |
---|---|
[CT] LEET CODE 14. Longest Common Prefix (0) | 2023.09.26 |
[CT] Leet Code 287. Find the Duplicate Number (0) | 2023.09.19 |
[CT] 프로그래머스 주사위 게임1 Python3 ver. (0) | 2023.09.18 |
[CT] 프로그래머스 홀짝에 따라 다른 값 반환하기 Python3 ver. (0) | 2023.09.17 |