코딩/코딩테스트
✔[프로그래머스]3진법 뒤집기
이지영
2022. 7. 22. 11:02
✔문제설명
자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- n은 1 이상 100,000,000 이하인 자연수입니다.
입출력 예
nresult
45 | 7 |
125 | 229 |
입출력 예 설명
입출력 예 #1
- 답을 도출하는 과정은 다음과 같습니다.
n (10진법)n (3진법)앞뒤 반전(3진법)10진법으로 표현
45 | 1200 | 0021 | 7 |
- 따라서 7을 return 해야 합니다.
입출력 예 #2
- 답을 도출하는 과정은 다음과 같습니다.
n (10진법)n (3진법)앞뒤 반전(3진법)10진법으로 표현
125 | 11122 | 22111 | 229 |
- 따라서 229를 return 해야 합니다.
10진수를 다른 진수로 변환하기 위해서는 toString()을,
다른 진수를 10진수로 변환하기 위해서는 parseInt()를 쓴다.
사용 Method
- Number.toString([radix]) : 숫자를 문자열로 변환하여 반환한다. 해당 method의 인자 값으로 radix를 전달하면 숫자를 해당 radix의 값으로 변환한 값을 문자열로 반환한다.
- String.split() : 문자열을 분할하여 요소로 전달한 배열을 반환한다. 해당 method의 인자 값을 전달하면 전달 받은 인자 값을 기준으로 문자열을 분할한다.
- Array.reverse() : 배열의 요소를 반대로 재배열 한다.
- Array.join() : 전달받은 인자 값을 기준을 요소 사이에 반영한 문자열을 반환한다.
- parseInt(string, radix) : 전달 받은 문자열을 전달 받은 radix로 분석한 정수를 반환한다. 해당 문자열이 3진법을 나타내고 있어, 3진법으로 분석한 정수를 반환한다고 이해했다.
<My Solution>

<Other Solution>
separate operation 를 사용