ν°μ€ν 리 λ·°
λ€μ ν° μ«μ_toString()μΌλ‘ μ§μ νν
choi95 2021. 10. 21. 11:32λ¬Έμ
λ¬Έμ μ€λͺ
μμ°μ nμ΄ μ£Όμ΄μ‘μ λ, nμ λ€μ ν° μ«μλ λ€μκ³Ό κ°μ΄ μ μ ν©λλ€.
- 쑰건 1. nμ λ€μ ν° μ«μλ nλ³΄λ€ ν° μμ°μ μ λλ€.
- 쑰건 2. nμ λ€μ ν° μ«μμ nμ 2μ§μλ‘ λ³ννμ λ 1μ κ°―μκ° κ°μ΅λλ€.
- 쑰건 3. nμ λ€μ ν° μ«μλ 쑰건 1, 2λ₯Ό λ§μ‘±νλ μ μ€ κ°μ₯ μμ μ μ λλ€.
μλ₯Ό λ€μ΄μ 78(1001110)μ λ€μ ν° μ«μλ 83(1010011)μ λλ€.
μμ°μ nμ΄ λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, nμ λ€μ ν° μ«μλ₯Ό return νλ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
μ ν μ¬ν
- nμ 1,000,000 μ΄νμ μμ°μ μ λλ€.
μ μΆλ ₯ μ
nresult
78 | 83 |
15 | 23 |
μ μΆλ ₯ μ μ€λͺ
μ
μΆλ ₯ μ#1
λ¬Έμ μμμ κ°μ΅λλ€.
μ
μΆλ ₯ μ#2
15(1111)μ λ€μ ν° μ«μλ 23(10111)μ
λλ€.
λ¬Έμ νμ΄
- 10μ§μλ₯Ό 2μ§μλ‘ λ°κΏμ£ΌκΈ° μν΄ λ°λ³΅λ¬ΈμΌλ‘ ν΄λΉ κ°μ 2λ‘ κ³μ λλ λλ¨Έμ§ κ°μ μμ λ°°μ΄μ μ μ¬
- 쑰건 2μΈ 1μ κ°―μλ₯Ό λΉκ΅ν΄μ£ΌκΈ° μν΄ String.match()λ₯Ό μ¬μ©νμ¬ μ κ·ννμμΌλ‘ μλ³ ν κ°λ§μ λ°°μ΄μ μ μ¬
μ½λ
function exportOneNum(n) {
let tmpArr = [];
let regExp = /[1]/g;
while(n) {
tmpArr.push(n % 2);
n = parseInt(n / 2);
}
let oneNum = 0;
oneNum = tmpArr.reverse().join('').match(regExp).length;
return oneNum;
}
function solution(n) {
let targetNum = n;
let target = exportOneNum(targetNum);
while(targetNum) {
targetNum++;
let next = exportOneNum(targetNum);
if(next === target) return targetNum;
}
}
μ€λ΅
λͺ κ°μ ν μ€νΈ μΌμ΄μ€μμ μκ° μ΄κ³Όλ‘ μΈν΄ μ€λ₯ μ²λ¦¬λμλ€.
μ΄λμ μ°μ° μκ°μ΄ μ€λ κ±Έλ Έμμ§ κ³ λ―Όνλ€κ°, 2μ§μλ‘ λ³ννλ κ³Όμ μμ μκ° λ³΅μ‘λκ° λμμ κ±°λΌλ μκ°μ λ€λ₯Έ λ°©λ²μ μ°Ύμ보μλ€.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Object/toString
μ«μ λ° BigIntsμ κ²½μ° toString()μ μ νμ μΌλ‘ κΈ°μ(radix)λ₯Ό 맀κ°λ³μλ‘ μ·¨ν©λλ€. κΈ°μμ κ°μ μ΅μ 2λΆν° 36κΉμ§μ λλ€.
toString() μΈμ κ°μΌλ‘ κΈ°μλ₯Ό λ£μ΄μ£Όλ©΄ ν΄λΉ κΈ°μ κ°μ λ°λ₯Έ μμ΄ν κ°μ μ»μ μ μμμ νμΈνμκ³ μ΄λ₯Ό μ΄μ©νκΈ°λ‘ νμλ€.
μ½λ
function exportOneNum(n) {
let regExp = /[1]/g;
let binaryN = n.toString(2);
let oneNum = 0;
oneNum = binaryN.match(regExp).length;
return oneNum;
}
function solution(n) {
let targetNum = n;
let target = exportOneNum(targetNum);
while(targetNum) {
targetNum++;
let next = exportOneNum(targetNum);
if(next === target) return targetNum;
}
}
'μκ³ λ¦¬μ¦ > νκ·Έ λ³ νμ΄' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μ λ ¬]κ°μ₯ ν° μ (0) | 2021.11.21 |
---|---|
[μμ νμ]μΉ΄ν« (0) | 2021.10.10 |
[μλΌν μ€ν λ€μ€μ 체]μμμ°ΎκΈ° (0) | 2021.10.09 |
[그리λ]ꡬλͺ λ³΄νΈ (0) | 2021.09.04 |
[μ ν΄λ¦¬λ νΈμ λ²]μ΅λ곡μ½μμ μ΅μ곡배μ (0) | 2021.09.03 |