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

김예지·2021년 10월 13일
1

문제

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


문제 풀이

코드

function solution(n) {
    const temp=n.toString(3).split('').reverse().join('');
    return parseInt(temp, 3); //3진수인 temp를 10진수로 변환 
}

이론

  • num.toString(n): 10진수를 다른 진수(n)로 변환
  • parseInt(num, n): 다른 진수를 10진수로 변환(num은 n진수인데 이걸 10진수로 변환하고 싶을 때)
profile
내가 짱이다 😎 매일 조금씩 성장하기🌱

1개의 댓글

comment-user-thumbnail
2021년 10월 26일

10/26
parseInt(문자, 3)의 형태로 들어오면 문자를 자연스럽게 3진수의 숫자로 인식한다.
위 문제에서 n을 Number화 한 후 parseInt(n, 3)을 하면 에러뜬다. 왜냐면 0021을 Number화 하면 21이 되기 때문에, Number화 한 후 parseInt한 것은 잘못된 결과를 나타낸다. 주의하기!

답글 달기