이번 문제도 정렬하는 문제이다.
배열의 정렬 기준을 커스텀 할 수 있는가를 물어보는 문제인 것 같다.
여기서 정렬 기준은 기존의 각 항목들이 큰지 비교하는 것이 아닌 두개를 붙였을 때 어떤게 더 큰지 비교해야한다.
즉, 10과 2를 비교할 때 10 > 2이면 102로 정렬이 되기 때문에 안되고
102와 210을 비교해야한다.
Kotlin에서는 collection 객체에 sortedWith를 통해 정렬 기준을 부여할 수 있다.
import java.util.*
class Solution {
fun solution(numbers: IntArray): String {
var answer = ""
numbers.sortedWith(Comparator({ o1, o2 ->
"$o2$o1".compareTo("$o1$o2")
})).forEach({answer += it})
if(answer[0].equals('0')) answer = "0"
return answer
}
}
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 완전탐색 : 모의고사 Kotlin (0) | 2020.10.02 |
---|---|
[프로그래머스] 정렬 : H-Index Kotlin (0) | 2020.09.26 |
[프로그래머스] 정렬 : K번째수 Kotlin (0) | 2020.09.26 |
[프로그래머스] 힙 : 이중우선순위큐 Kotlin (0) | 2020.09.16 |
[프로그래머스] 힙 : 디스크 컨트롤러 Kotlin (0) | 2020.09.15 |
댓글