자료구조&알고리즘/프로그래머스
[Python] K번째 수 - 정렬
두잇 두두
2024. 2. 12. 10:48
728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/42628
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
def solution(array, commands):
answer = []
for command in commands:
new_array = array[command[0]-1:command[1]]
new_array.sort()
answer.append(new_array[command[2]-1])
return answer
다른 사람 코드
def solution(array, commands):
return list(map(lambda x:sorted(array[x[0]-1:x[1]])[x[2]-1], commands))
접근법
주어진 array에서 commands에 주어진 연산을 수행하여 결과를 반환하는 문제입니다.
문제에 주어진 대로 각 연산을 수행하고 그 결과를 리스트에 담아 반환하면 됩니다.
배운 점
리스트 컴프레이션을 사용하는게 옛날에는 낯설었는데 이제는 코드가 읽힌다.
그래도 꼭 써야하는가 아직까지 의문이다.