[프로그래머스] K번째 수 (리스트 슬라이싱)

zunzero·2022년 8월 23일
0

알고리즘(파이썬)

목록 보기
30/54

https://school.programmers.co.kr/learn/courses/30/lessons/42748

문제에 대한 설명은 다음과 같고, 매우 간단하다.

def solution(array, commands):
    answer = []
    for p in range(len(commands)):
        i, j, k = commands[p][0], commands[p][1], commands[p][2] - 1
        # 배열 슬라이싱
        test = array[i-1:j]
        test.sort()
        answer.append(test[k])
    return answer

이 문제는 파이썬에서 간단하게 리스트를 자를 수 있는 방법을 소개하기 위함이다.

slice_list[start:end:step]

위의 코드가 의미하는 바는 다음과 같다.

slice_list를 start 인덱스부터 end-1 인덱스까지 step만큼 건너 뛰어서 슬라이싱 한다.

slice_list = [1, 2, 3, 4, 5]

print(slice_list[1:])	# [2, 3, 4, 5]
print(slice_list[-3:])	# [3, 4, 5]

print(slice_list[:2])	# [1, 2]
print(slice_list[:-1])	# [1, 2, 3, 4]

print(slice_list[::2])	# [1, 3, 5]
print(slice_list[::-1]	# [5, 4, 3, 2, 1]
profile
나만 읽을 수 있는 블로그

0개의 댓글