꾸준하게
[JS코테] 월간 코드 챌린지 시즌 - 13진법 뒤집기 본문
728x90
반응형
https://school.programmers.co.kr/learn/courses/30/lessons/68935
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
[나의 풀이]
function solution(n) {
return parseInt([...n.toString(3)].reverse().join(''), 3);
}
# 참고
https://medium.com/web-dev-note/javascript-%EC%A7%84%EB%B2%95-%EB%B3%80%ED%99%98-330694083495
Javascript 진법 변환
직접 구현하지 말자
medium.com
# 풀이방법
1) 3진법으로 변환
//n.toString(x) : 10진수 n을 x진수로 변환
n.toString(3)
2) 앞뒤 뒤집기
- 배열로 변환하여 순서를 바꿔야 함.
//스프레드 연산자 [...x] : 문자열 x가 글자를 기준으로 나눠져서 배열로 변환됨
//arr.reverse() : 배열arr의 순서를 뒤집어줌
[...n.toString(3)].reverse()
3) 순서 바뀐 배열을 다시 문자열로 합침
//arr.join('') : 배열arr를 합쳐서 문자열로 변환
[...n.toString(3)].reverse().join('')
4) 10진법을 다시 3진법으로 변환
//parseInt(x,n): 10진법인 x를 n진법으로 변환
parseInt([...n.toString(3)].reverse().join(''), 3)
728x90
반응형
'JS코딩테스트' 카테고리의 다른 글
[JS코테] Summer/Winter Coding(~2018) - 예산 (0) | 2023.05.07 |
---|---|
[JS코테] 이상한 문자 만들기 (0) | 2023.05.06 |
[JS코테] 스택/큐 - 같은 숫자는 싫어 (0) | 2023.05.04 |
[JS코테] 최대공약수와 최소공배수 (0) | 2023.05.03 |
[JS코테] 직사각형 별찍기 (0) | 2023.05.02 |