본문 바로가기

알고리즘

[코딩 테스트] Level. 1 과일장수 (kotlin,코틀린)

728x90

 

 

나의 풀이 법 

private fun solution(k: Int, m: Int, score: IntArray): Int {
    var answer: Int = 0
    var length = score.size
    val a = score.sortedDescending()

    while (length >= m) {
        val l = score.size - length
        val b = a.subList(l, l + m)
        answer += (m * b.last())
        length -= m
    }
    return answer
}

 

 

다른 분의 풀이 법 

   fun solution(k: Int, m: Int, score: IntArray): Int {
        var answer: Int = 0
        score.sortDescending()
        var num =0
        score.forEach{
            num+=1
            if(num%m == 0){
               answer+= it*m
            }
        }
        return answer
    }

훨씬 간단해 보인다.