[Programmers] JavaScript 3진법 뒤집기

Kim Joy·2023년 5월 9일

3진법 뒤집기

문제 설명

자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.

입출력 예

코드

내가 처음에 작성한 코드는 다음과 같다.

    let array = [];
    
    while(n>=3) {
        array.push(n%3)
        n = parseInt(n/3)
    }
    array.push(n)
    let newArray = array.join("");
    let trans = parseInt(newArray,3)
    return trans

나는 10진수를 다른 진수로 바꾸는 방법을 몰랐기 때문에
내가 작성한 while문은 최선이었다.

하지만 다른 사람들의 코드를 보니까 더 쉽고 빠르게 작성한 코드가 있어서 살펴보았더니..
10진수를 다른 진수로 바꾸고.. reverse()를 사용하고, 또 그것을 다시 10진수로 바꾸는 아주 간단한 방법이 있었다.
난 몰랐지만 ...!

function solution(n) {
    let a = [...n.toString(3)].reverse().join("")
    return parseInt(a,3)
    
}

배리배리 심플....

profile
코딩어린이 성장중

0개의 댓글