정수 리스트 num_list
가 주어질 때, 마지막 원소가 그전 원소보다 크면 마지막 원소에서 그전 원소를 뺀 값을 마지막 원소가 그전 원소보다 크지 않다면 마지막 원소를 두 배한 값을 추가하여 return하도록 solution 함수를 완성해주세요.
num_list
의 길이 ≤ 10num_list
의 원소 ≤ 9num_list | result |
---|---|
[2, 1, 6] | [2, 1, 6, 5] |
[5, 2, 1, 7, 5] | [5, 2, 1, 7, 5, 10] |
입출력 예 설명
입출력 예 #1
입출력 예 #2
def solution(num_list): if num_list[len(num_list)-1] > num_list[len(num_list) - 2]: num_list.append(num_list[len(num_list)-1] - num_list[len(num_list)-2]) else: num_list.append(num_list[len(num_list)-1]*2) return num_list
코드 간단 소개
- 맨 마지막 값과 마지막에서 두번째 값을 비교한다. len(num_list)-1 식으로 인덱싱한다.
- 비교했을 때 맨 마지막 값이 크면 .append()를 활용해 마지막값에서 마지막에서 두번째 값을 뺀 것을 추가한다.
- 마지막값이 작으면 마지막 값에 곱하기 2를 하여 .append()로 추가한다.
인덱싱을 할때
len(num_list) -1
로 했는데-1
로 인덱싱을 해도 동일한 결과가 나온다.
def solution(l): l.append(l[-1]-l[-2] if l[-1]>l[-2] else l[-1]*2) return l
- append()안에 들어있는 내용을 먼저 확인해보자
l[-1]-l[-2]을 if l[-1]이 l[-2]보다 크면 넣고, 아니면 l[-1]*2를 넣는다.
인덱싱에서 -1은 맨 마지막 값, -2는 뒤에서 그다음값으로 뒤에서 부터 인덱싱하는데 사용한다.- l.append()로 l리스트의 맨 마지막에 추가한다.