처음 두 숫자를 이용하여 배열을 잘라낸 후 잘라낸 배열의 k번째 있는 숫자를 출력하면 되는 간단한 문제지만 배열이 0번쨰부터 시작한다는 것을 주의깊게 생각하지 않는다면 틀리기 쉬운 문제입니다
def solution(array, commands):
answer = []
for arr in commands:
testcase = array[arr[0] - 1 : arr[1]]
answer.append(sorted(testcase)[arr[2] - 1])
return answer
다른 사람의 풀이를 보던 중 인상깊은 코드가 있었습니다
저랑은 달리 단 두 줄로 정답을 출력해낼 수 있는 아주 간결한 코드였습니다def solution(array, commands): return list(map(lambda x:sorted(array[x[0]-1:x[1]])[x[2]-1], commands))
map과 람다를 활용하여 푼 코드로 람다 함수에 대한 내용은 다음 링크를 참고하시면 좋을 것 같습니다
https://blog.naver.com/star7sss/222275439291