프로그래머스 k번째 수

매일 공부(ML)·2022년 5월 5일
0

이어드림

목록 보기
33/146

풀이1

def solution(array, commands):
    answer = []
    for command in commands: #일단 commands에서 i,j,k뽑아내기
        new_array = array[command[0]-1:command[1]] # i and j
        new_array.sort() #뽑은 후 정렬
        answer.append(new_array[command[2]-1]) # k번째 뽑을 값
    return answer

풀이2

#리스트 컴프리헨션

"""
i, j,k = map(int,input().split())
array = list(map(int,input().split()))

result = []
for m in array[i-1:j]:
    result.append(m)
    result.sort()
print(result[k-1])

"""

def solution(array, commands):
    return [sorted(array[i-1:j])[k-1] for i, j, k in commands] # commands에서 순서대로 I,J,K순으로 뽑기
    #그리고 i,j범위에서 array를 뽑은 후에 정렬하기
    # 정렬한 후에 K-1번째 숫자 뽑아서 return
    
profile
성장을 도울 아카이빙 블로그

0개의 댓글