문제출처 : 프로그래머스

문제소개

K번째 수
- 배열의 i ~ j번쨰 숫자까지 자르고, k번째 있는 수를 반환하는 함수 작성


입력)
array = [1, 5, 2, 6, 3, 7, 4]
commands = [[2, 5, 3], [4, 4, 1], [1, 7, 3]]

출력)
return = [5, 6, 3]

코드

def solution(array, commands):
    answer = []
    # i, j, k 값 추출한 뒤 answer 리스트에 값 더하기
    for i,j,k in commands:         
        answer.append(sorted(array[i-1:j])[k-1])
    return answer
array = [1, 5, 2, 6, 3, 7, 4]
commands = [[2, 5, 3], [4, 4, 1], [1, 7, 3]]

solution(array, commands)
[5, 6, 3]

다른 풀이

def solution(array, commands):
    return list(map(lambda x:sorted(array[x[0]-1:x[1]])[x[2]-1], commands))
profile
Data & PM

0개의 댓글