일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자바스크립트
- 재귀함수
- Developer_JoyKim
- 최강의 인생
- 알고리즘
- SQL
- 정규표현식
- 개발자의 책장
- array
- 개발자_조이킴
- array.slice()
- 배열
- 프로그래머스
- for문
- 코드스테이츠
- Where
- 코딩테스트
- 코플릿
- node.js
- select
- JavaScript
- Algorithms
- Hackerrank
- 블록체인
- join
- 코딩공부
- array.push()
- MySQL
- 역행자
- Programmers
Archives
- Today
- Total
CodingSpace
프로그래머스#51(Lv.1)_3진법 뒤집기 본문
3진법 뒤집기
다른 분들이 하신것 보고 배우고 또 배우자! (toString 메소드!)
※ toString() 메서드
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Number/toString
Number.prototype.toString() - JavaScript | MDN
toString() 메서드는 특정한 Number 객체를 나타내는 문자열을 반환합니다.
developer.mozilla.org
toString() 메소드는 특정 진수로 객체를 표현한 문자열을 만들 수 있다!!!
예시) (254).toString(15) // '11e'
→ 15*15 + 15 + 14
→ 여기서 14는 9 + 5 (a, b, c, d, e)이므로 'e'로 표현됨!
포기하지말고 계속해서 공부하자!
화이팅:)
// 프로그래머스 - 3진법 뒤집기 function solution(n) { // 3진법 n을 3으로 나눌 때, 나머지를 담을 배열 let arrRemainder = [] // n이 3미만이 되면 while문 종료 while(n >= 3) { let remainder = n % 3 arrRemainder.unshift(remainder) // n을 3으로 나눈 몫으로 갱신 n = Math.floor(n / 3) } // 45 => arr = [2, 0, 0], num = 1 => arr.unshift(num) = [1, 2, 0, 0] arrRemainder.unshift(n) // 기존 3진법 수 뒤집기: 1200 => 0021 arrRemainder.reverse() // 10진법 수 담아줄 decimal let decimal = 0 // 뒤집은 3진법 수, 10진법 만들기 for(let i = 0; i < arrRemainder.length; i++) { if(arrRemainder[i] !== 0) { let exponent = arrRemainder.length - i - 1 decimal = decimal + (arrRemainder[i] * Math.pow(3, exponent)) } } return decimal } |
<다른분의 solution>
![]() ![]() |
'프로그래머스 > Level1' 카테고리의 다른 글
프로그래머스#53(Lv.1)_실패율 (0) | 2021.11.08 |
---|---|
프로그래머스#52(Lv.1)_폰켓몬 (0) | 2021.11.05 |
프로그래머스#50(Lv.1)_모의고사 (0) | 2021.11.04 |
프로그래머스#49(Lv.1)_체육복 (0) | 2021.11.03 |
프로그래머스#48(Lv.1)_예산 (0) | 2021.11.03 |
Comments