관리 메뉴

나만을 위한 블로그

[Algorithm] 프로그래머스 - 등수 매기기 (Kotlin) 본문

알고리즘 문제 풀이/프로그래머스

[Algorithm] 프로그래머스 - 등수 매기기 (Kotlin)

참깨빵위에참깨빵_ 2023. 1. 29. 22:30
728x90
반응형
영어, 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매긴다. 영어, 수학 점수를 담은 2차원 배열 score가 주어질 때, 영어와 수학 점수 평균을 기준으로 매긴 등수를 담은 배열을 리턴하는 solution()을 완성하라

 

 

이 문제도 풀지 못했다.

 

https://gyulpiki.tistory.com/entry/%EB%93%B1%EC%88%98-%EB%A7%A4%EA%B8%B0%EA%B8%B0-Java-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EC%9E%85%EB%AC%B8

 

등수 매기기 - Java [프로그래머스 입문]

❤️Problem 더보기 문제 영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기려고 합니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 영어 점수와 수학 점

gyulpiki.tistory.com

class Solution {
    fun solution(score: Array<IntArray>): IntArray {
        val students = score.size
        val rank = IntArray(students)
        for (i in rank.indices) {
            rank[i] = 1
        }
        for (i in 0 until students) {
            for (j in 0 until students) {
                if (score[i][0] + score[i][1] < score[j][0] + score[j][1]) {
                    rank[i]++
                }
            }
        }
        return rank
    }
}

 

간단하게 하면 아래와 같다.

 

class Solution {
    fun solution(score: Array<IntArray>): IntArray {
        return score.map(IntArray::average).map { score.map(IntArray::average).sortedDescending().indexOf(it) + 1 }
            .toIntArray()
    }
}

 

반응형
Comments