학습
시험

리더보드

난이도
BEGINNER

문제 설명

정수로 이루어진 배열 numbers와 정수 m이 주어질 때, 배열에서 가장 큰 값부터 순서대로 상위 m 개의 정수를 내림차순으로 정렬하여 반환하는 solution 함수를 작성하시오.

배열에는 동일한 값이 여러 번 존재할 수 있으며, 가장 큰 값부터 차례대로 m 개를 선택해야 합니다.

중요 정렬에 대해 O(N logN) 시간복잡도가 아닌 O(NM) 시간복잡도에 해당하는 방법으로 문제를 해결하시오.


제한 사항

  • numbers의 길이는 m 이상 1,000,000 이하입니다.

  • m은 2 이상 10 이하의 정수입니다.

  • numbers의 각 원소는 32비트로 표현되는 정수입니다.


예시 테스트케이스 설명

테스트케이스 번호 numbers m return
1 [3,6,4,1,5,9,2,6,5,3,5] 3 [9,6,6]
2 [10,20,20,7,2,19,10] 4 [20,20,19,10]
3 [1,2,3,4,5] 5 [5,4,3,2,1]

1번 테스트케이스 설명

  • 입력 배열에서 가장 큰 값부터 3개를 선택하면 9,6,6이 됩니다. 6이 두 번 등장하므로 두 번 모두 포함됩니다.

2번 테스트케이스 설명

  • 입력 배열에서 가장 큰 값부터 4개를 선택하면 20,20,19,10이 됩니다. 20이 두 번 등장하므로 두 번 모두 포함됩니다.

3번 테스트케이스 설명

  • 입력 배열의 모든 원소를 선택하므로, 내림차순으로 정렬된 [5,4,3,2,1]이 반환됩니다.