Programmers

[프로그래머스][JS] 3진법 뒤집기

winter17 2023. 6. 23. 11:40

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

 

프로그래머스

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

programmers.co.kr

풀이 과정

function solution(n) {
    const array = [...(parseInt(n, 10).toString(3))].reverse().join('')
    return parseInt(array, 3);
}

parseInt(n, 10)은 n을 10진수로 인식하여 십진수로 변환된다.

여기서 toString을 하면 변환된 십진수를 3진수로 바꿔준다.

문제에서 3진법인 상태에서 앞뒤 반전을 요구했기 때문에 스프레드 배열을 이용하여 배열을 만들어준 후 reverse메서드로 뒤집어준다.

그 다음 배열의 요소들이 뒤집어진 상태를 join메서드로 다시 문자열로 합쳐준다.

마지막으로 다시 10진법으로 만들어 줘야 하는데 parseInt(array, 3)을 해서 뒤집어진 문자열(array)을 다시 3진수로 인식하여 10진수로 변환하여 반환하면 끝이다.


리뷰

2023.06.23 - [Programmers] - [프로그래머스][JS] 이진수 더하기

이진수 더하기 문제를 풀었다면 쉽게 풀 수 있는 문제이다.