문제
풀이 언어
Kotlin
코드
class Solution {
fun solution(s: String): IntArray {
val string = s.slice(2 until s.length - 2)
val array = string.split("},{")
val sortedArray = array.sortedBy { it.length }
val answer = mutableListOf<Int>()
for (e in sortedArray) {
val splitString = e.split(',')
for (num in splitString) {
if (answer.contains(num.toInt()).not()) answer.add(num.toInt())
}
}
return answer.toIntArray()
}
}
풀이 방법
우선 내부의 원소만을 추출하기 위해 양 옆의 {{
와 }}
를 제거했다. 이후 },{
단위로 split
을 진행하였고 그 결과 튜플 내부의 원소만 리스트
형태로 남게 된다. 이를 리스트 크기
를 기준으로 오름차순
으로 정렬하면 이차원 리스트
로 존재한다. 최종적으로 탐색을 진행하며 일차원 리스트
내부의 원소를 한 번 더 split
하고 해당 원소가 결과를 저장하는 리스트
에 존재하지 않으면 추가한다.
결과
'✍️ 코테 준비 > String' 카테고리의 다른 글
[문자열 / Kotlin] 2019 카카오 개발자 겨울 인턴십 - 튜플 (0) | 2022.03.22 |
---|---|
[문자열 / Kotlin] 2019 KAKAO BLIND RECRUITMENT - 오픈채팅방 (0) | 2022.03.13 |
[문자열 / Kotlin] 2020 KAKAO BLIND RECRUITMENT - 문자열 압축 (0) | 2022.03.11 |