프로그래머스 lv1 k번째 수 파이썬..
배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요.
생각보다 많이 쉬워서... 풀때는 왜 lv1에 계신가요 했던 문제...🤔🤔
흘깃보니 파이썬이 아닌, 다른 언어로 풀면 많이...아주많이 어려운것 같다
def solution(array, commands):
ans = []
for i in commands:
a = sorted(array[i[0]-1:i[1]])[2]-1
ans.append(a[i[2]-1])
return ans
commands
를 i
에 넣어준 후,
그걸 순서대로 보여주는 sorted()
후, ans
라는 list
에 넣어주는 형식
이걸 줄이면
def solution(array, commands):
ans = []
for i in commands:
ans.append( sorted(array[i[0]-1:i[1]])[i[2]-1])
return ans
이렇게,
def solution(array, commands):
return [sorted(array[i-1:j])[k-1] for i,j,k in commands]
이렇게도 가능해진다. 파이썬 list
는 축복이야ㅜ👏👏👏