본문 바로가기

알고리즘

[프로그래머스] lv1. 3진법 뒤집기 (JavaScript)

문제 설명

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


제한사항
  • n은 1 이상 100,000,000 이하인 자연수입니다.

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/68935

 

 

- 내 풀이

function solution(n) {
    return parseInt(n.toString(3).split('').reverse().join(''),3)
}

10진법을 3진법으로 바꾸는 toString()함수를 통해 변환하고, 이를 reverse로 뒤집은 다음 parseInt를 통해 10진법을 3진법으로 바꿨다.

 

 

- 다른 사람의 풀이

 

const solution = (n) => {
    return parseInt([...n.toString(3)].reverse().join(""), 3);
}

스프레드 연산을 사용하는 편이 좋을 것 같다.