CodingTest/Programers

[programers] 프로그래머스(코틀린) : 푸드 파이터 대회

JunJangE 2022. 11. 21. 09:48

문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

알고리즘

- 반복문을 통해 음식의 개수가 짝수인지 홀수인지 확인한다.

- 짝수라면 모든 음식을 먹을 수 있고 홀수라면 하나의 음식 빼고 다 먹을 수 있다.

- 먹을 수 있는 음식은 대칭이 되어야 하므로 음식의 2분의 1개만 answer에 담는다.

- 나머지 음식은 반복문이 끝난 후 현재 먹을 수 있는 음식을 거꾸로 정렬 후 다시 추가한다.

코드

class Solution {
    fun solution(food: IntArray): String {
        var answer: String = ""
        food.forEachIndexed { idx, f ->
            val cnt = if (f % 2 != 0) f - 1 else f
            repeat(cnt / 2) {
                answer += "$idx"
            }

        }
        val reserveAnswer = answer.reversed()
        answer += "0"
        answer += reserveAnswer

        return answer
    }
}

github

 

GitHub - junjange/KotlinAlgorithm: 내가 푼 코딩 테스트 문제와 해결법(Kotlin)

내가 푼 코딩 테스트 문제와 해결법(Kotlin). Contribute to junjange/KotlinAlgorithm development by creating an account on GitHub.

github.com