본문 바로가기
코딩테스트

[프로그래머스] 진료순서 정하기

by liz_devel 2025. 12. 22.

🗒 문제


📝 나의 문제풀이

class Solution {
    fun solution(emergency: IntArray): IntArray {
        val emergencySort = emergency.sortedDescending()
        
        return emergency.map{
            emergencySort.indexOf(it) + 1
        }.toIntArray()
    }
}

📝 다른 사람의 문제 풀이

다른 사람의 문제 풀이는 좋아요 수가 높거나 많은 사람들이 푼 방법 기준으로 첨부하였습니다.

class Solution {
    fun solution(e: IntArray) = e.map { e.sortedDescending().indexOf(it) + 1 }.toIntArray()
}

🖊 문제 풀이 시 알면 좋을 것

sortedDescending()

  • 설명: 배열/리스트를 내림차순으로 정렬
  • 특징: 원본은 변경되지 않고, 정렬된 새 리스트 반환
  • 예시
val arr = listOf(3, 76, 24)
val sorted = arr.sortedDescending()
println(sorted) // [76, 24, 3]

 

 

 

indexOf(element)

  • 설명: 리스트에서 해당 원소의 첫 번째 위치(인덱스) 반환
  • 인덱스는 0부터 시작
  • 예시:
val sorted = listOf(76, 24, 3)
println(sorted.indexOf(76)) // 0
println(sorted.indexOf(24)) // 1
println(sorted.indexOf(3))  // 2

문제에서 순위 = index + 1

반응형