자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후,
이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
1. n은 1 이상 100,000,000 이하인 자연수입니다.
n | result |
---|---|
45 | 7 |
125 | 229 |
1. 10진법을 3진법으로 바꾼다.
2. 3진법을 앞뒤반전한다.
3. 앞뒤반전된 3진법을 다시 10진법으로 바꾼다.
function solution(n) {
let a = n.toString(3).split('').reverse().join('')
return parseInt(a, 3)
}
toString안에 radix값을 넣어주어서 n진법의 문자열로 변환한다.
그 다음 split과 reverse로 문자열을 쪼갠다음 뒤집어주고
join으로 나뉘어진 배열을 하나로 합쳐준다.
마지막으로 나온 변수 a를 10진수로 변환시켜주어야 하는데
parseInt를 이용하여 변환시켜준다. 3진수를 10진수로 변화시켜야하기때문에
인덱스를 3으로 넣어준다. 간단하게 n진법을 -> m진법으로 교체해야된다면
인덱스로 n을 넣으면 된다.