Problem Solving/프로그래머스

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

세고래 2021. 5. 20. 02:38

programmers.co.kr/learn/courses/30/lessons/68935?language=javascript

 

코딩테스트 연습 - 3진법 뒤집기

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

programmers.co.kr


1) 풀이

프로그래머스에서 문제 푸는 건 아직 서툴다 😂

그래도 하나씩 모이면 익숙해지겠지.

 

오늘은 간단한 진법 변환에 대한 문제를 자바스크립트로 풀었다.

진법변환을 위해 자바스크립트의 toString, parseInt 함수를 이용하였는데, 

해당 함수들에 대한 내용을 적은 자료가 이미 내 블로그에 게시되어 있으니,

아래 글을 참고해주면 좋겠다!

2021.05.20 - [웹 공부] - [JavaScript] 진수변환 toString() / parseInt()

 

[JavaScript] 진수변환 toString() / parseInt()

배워가는 학생입니다. 틀린 부분이 있다면 댓글로 알려주시면 감사하겠습니다!🤗 알고리즘 문제 중에, 진수변환 문제가 종종 있다. 나는 이걸 여태까지는 직접 % 를 통해 구해왔었는데, 자바스

sebada.tistory.com

그 이외에는 따로 설명이 필요한 부분은 없지만,

중간에 3진수로 변환해준 수를 뒤집어야 한다는 사실을 까먹지 않았으면 좋겠다!

2) 최종 소스코드
function solution(n) {
    let answer = 0; //정답변수
    let tmp=n.toString(3); //n->3진법
    for(let i=tmp.length-1;i>=0;i--){
        answer+=tmp[i]; //정답변수에 3진법 뒤집기
    }
    answer=Number.parseInt(answer,3); //3진법->10진법
    return answer;
}
3) 참고자료

 

728x90