알고리즘
릿코드 506. Relative Ranks 코틀린
rkrkrr0101
2024. 5. 8. 10:23
그냥 배열의 랭크매기고 1,2,3등 이름바꾸기
컬렉션 랭크매기는 라이브러리가 어디있었던거같은데 파이썬이었나
정답
class Solution {
fun findRelativeRanks(score: IntArray): Array<String> {
val scoreMap = hashMapOf<Int, Int>()
for ((index,value) in score.withIndex()){
scoreMap[value] = index
}
val sortIndexList = scoreMap.keys.sorted().reversed()
val valueList = mutableListOf<Int>()
for (i in sortIndexList){
valueList.add(scoreMap.getValue(i))
}
val resArray= Array(score.size) { "" }
for ((index,value) in valueList.withIndex()){
if (index==0){
resArray[value]="Gold Medal"
continue
}
if (index==1) {
resArray[value]="Silver Medal"
continue
}
if (index==2) {
resArray[value]="Bronze Medal"
continue
}
resArray[value]=(index+1).toString()
}
return resArray
}
}