프로그래머스

3진법 뒤집기

끝까지 처음처럼 2022. 9. 9. 20:20
728x90
import kotlin.math.*
class Solution {
    fun solution(n: Int): Int {
        var three = mutableListOf<Int>()
        var answer: Int = 0
        var i = n
        while(i >= 1){
            three.add(i%3)
            i /= 3
        }
        for(i in 0 .. three.size - 1){
            var sqrt = 1
            var temp = 0
            while(temp < three.size-1 - i){
                sqrt *= 3
                temp++
            }
            answer += three[i]*sqrt
        }
        return answer
    }
}

저의 현재 실력으로 푼 문제 답안이며, 가장 좋은 코드는 아닐 수 있으며, 코틀린을 공부하면서 추가적으로 알게 된 개념이 있어 다시 풀 경우 추가적으로 코드를 작성 할 수 있도록 하겠습니다.