[프로그래머스] Lv.1 K번째수

Tony Kim·2022년 1월 15일
0
post-thumbnail

[프로그래머스]

Lv.1 완주하지 못한 선수

1.문제

input 배열과 명령어(i~j까지를 정렬했을때 k번째값)
output k번째 값들을 저장한 리스트

2. 풀이

반복문으로 commands를 순회하며 각 command마다 슬라이싱, sort(), index 활용하여 k번째 값을 answer 리스트에 append

3. 코드

def solution(array, commands):
    answer = []
    for command in commands:
        new_array = array[command[0]-1:command[1]]
        new_array.sort()
        answer.append(new_array[command[2]-1])
    return answer

모범코드

def solution(array, commands):
    answer = []
    for command in commands:
        i,j,k = command
        answer.append((sorted(array[i-1:j])[k-1])
    return answer

반성)

  • i, j, k = command // 리스트를 새로운 변수에 저장하는 다른 방법
  • sort()함수 말고 sorted(리스트) 사용하면 nonetype error 발생하지 않음
  • 슬라이싱 [index 포함 : index 미포함(바로앞까지)]
profile
Back-end-dev

0개의 댓글