160일차(1) - 3진법 뒤집기(프로그래머스)

김민찬·2021년 10월 16일
0

취업으로의 여정

목록 보기
161/196

3진법 뒤집기

프로그래머스를 풀다가 새로 알게된 parseInt()함수와 toString()함수의 인자의 존재를 기록해 놓을려고 블로그에 작성하게 되었다.

3진법 뒤집기

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

입출력 예

nresult
457
125229

풀이

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

해석

function solution(n) {
    const ternary = n.toString(3)
    // 2~36 사이의 진수를 넣어서 10진수를 다른 진수로 변화시킬수 있다. 위의 식은 3진수로 변환한 것
    .split('')
    // 배열의 순서를 반전시키는 array.reverse()를 사용하기 위해서 배열로 만든다.
    .reverse()
    // 배열을 뒤집는다.
    .join('');
    // 뒤집은 배열을 다시 합친다.
    return parseInt(ternary, 3);
    // parseInt의 두 번째 인자는 2~36 사이의 진수를 받아서 10진수로 변환한다.
}
profile
두려움 없이

0개의 댓글