문제 링크 :
문제 요약 :
풀이 흐름 :
풀이 언어 : Kotlin
class Solution {
fun solution(scores: Array<IntArray>): String {
var answer: String = ""
var count: Int = scores.size
for(myId in scores.indices){
var sum: Int = 0
var average: Int = 0
// 내 점수보다 작은/큰 점수를 준 사람이 몇명인지 카운트
var lowerCount: Int = 0
var higherCount: Int = 0
var sameCount: Int = 0
var myScore: Int = scores[myId][myId]
for(yourId in scores.indices){
var yourScore = scores[yourId][myId]
sum += yourScore
if(myScore > yourScore) lowerCount++
if(myScore < yourScore) higherCount++
if(myScore == yourScore) sameCount++
}
if(sameCount == 1 &&
(lowerCount == 0 || higherCount == 0 ))
average = (sum - myScore) / (count-1)
else
average = sum / count
when(average){
in 90..100 -> answer += 'A'
in 80..89 -> answer += 'B'
in 70..79 -> answer += 'C'
in 50..69 -> answer += 'D'
else -> answer += 'F'
}
}
return answer
}
}