728x90
문제
배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구한다.
입력
array |
commands |
[1, 5, 2, 6, 3, 7, 4] |
[[2, 5, 3], [4, 4, 1], [1, 7, 3]] |
출력
[5,6,3]
1. commands에서 i, j, k를 꺼낸다.
2. slicing을 활용하여 number에 i-1:j 까지 대입한다.
3. number를 오름차순 정렬하고
4. number의 k-1번째 수를 answer에 추가한다.
python
def solution(array, commands):
answer = []
for idx in range(len(commands)):
i=commands[idx][0]
j=commands[idx][1]
k=commands[idx][2]
number=array[i-1:j]
number.sort()
answer.append(number[k-1])
return answer
'알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글
[Level1] 정수 제곱근 판별 (0) | 2021.01.22 |
---|---|
[Level1] 정수 내림차순으로 배치하기 (0) | 2021.01.22 |
[Level1] 모의고사 (0) | 2021.01.22 |
[Level1] 완주하지 못한 선수 (0) | 2021.01.22 |
[Level1] 같은 숫자는 싫어 (0) | 2021.01.21 |