문제 풀이 방법
주어진 IntArray의 맨 끝 인덱스부터 접근한다.
물은 항상 가운데에 있어야 하므로 물 한개(0)를 먼저 리스트에 추가
주어진 배열을 기준의 맨 끝 인덱스를 접근하여 (배열의 요소/2 ) 만큼 리스트의 맨 앞과 맨 뒤에 값을 추가한다.
fun solution(food: IntArray): String {
var index = food.size - 1
var list = arrayListOf<Int>()
list.add(0) // 리스트에 먼저 0부터 삽입
while (0 < index) { // 처음시작의 시작은 배열의 끝 인덱스부터
for (i in 0 until food[index] / 2) {
list.add(0, index) // 리스트의 맨 앞
list.add(list.size, index) // 리스트의 맨 뒤
}
index--
}
return list.joinToString("")
}
'코딩테스트 준비(kotlin) > 기본' 카테고리의 다른 글
[kotlin] 콜라 문제 (0) | 2024.05.28 |
---|---|
[kotlin] 문자열 나누기 (0) | 2024.05.27 |
[kotlin] 삼총사 (0) | 2024.05.16 |
[kotlin] 최대공약수와 최소공배수 (1) | 2024.05.16 |
[kotlin] 제일 작은 수 제거하기 (0) | 2024.04.22 |