본문 바로가기
코딩테스트 준비(kotlin)/기본

[kotlin] 푸드 파이트 대회

by 1chanhue1 2024. 5. 27.

 

 

문제 풀이 방법 

 

주어진 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