https://school.programmers.co.kr/learn/courses/30/lessons/138477?language=kotlin
더보기
??
이 문제가 왜 정답률이 바닥을 치는지 모르겠는데..
그냥 수정 가능한 배열(명예의 전당 배열)에다가 일단 값을 때려박아서 내림차순 정렬함 ->
만약 명예의 전당에 올라갈 수 있는 수를 넘으면 배열의 가장 끝 값(가장 작은 수)를 빼버림 ->
남은 배열 중 가장 끝 값(최하위 점수)를 정답 배열에 넣기
이러면 끝남. 진짜 이렇게 쉬울 수가 없음 문제가..
굳이 이렇게 priceList(명예의 전당) 배열 만들 필요 없이 그냥 score만 돌아서 k값으로 비교하는 법도 있을거 같은데 굳이..? 굳이? 굳이?
class Solution {
fun solution(k: Int, score: IntArray) : IntArray {
var answerList = mutableListOf<Int>()
var priceList = mutableListOf<Int>()
for(dayScore in score) {
priceList.add(dayScore)
priceList.sortDescending()
if(priceList.size > k) {
priceList.removeAt(priceList.size - 1)
}
answerList.add(priceList.get(priceList.size - 1))
}
return answerList.toIntArray()
}
}
반응형
'스터디(programmers)' 카테고리의 다른 글
Kotlin] 프로그래머스 lv.1, 로또의 최고 순위와 최저 순위 (0) | 2023.03.01 |
---|---|
Kotlin] 프로그래머스 lv.1, 가장 가까운 같은 글자 (0) | 2023.02.22 |
Java] 프로그래머스 lv.1, 부족한 금액 계산하기 (0) | 2023.02.09 |
Kotlin] 프로그래머스 lv.1, 모의고사 (0) | 2023.02.08 |
Kotlin] 프로그래머스 lv.1, 체육복 (0) | 2023.02.01 |