Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 객체지향
- Async
- await
- Git
- git commit
- commit
- 비동기 처리
- vscode
- OOP
- 타입스크립트
- ci/cd
- 비동기
- 개발
- 커밋
- 자바스크립트
- js
- 역직렬화
- json
- javascript
- 런타임
- Deserialization
- tar
- Dictionary
- callback
- vanilla javascript
- 바닐라 자바스크립트
- 절차지향
- serialization
- typescript
- 프론트엔드
Archives
- Today
- Total
Hyundolog
[Programmers] Lv2. 이진 변환 반복하기 (JavaScript) 본문
문제
풀이
1차
function solution(s) {
let str = s;
let cnt = 0;
let sum = 0;
while(str.length > 1) {
let one_arr = [];
for(let i = 0; i < str.length; i++) {
if(str[i] === '1') {
one_arr.push('1');
} else {
sum ++;
}
}
str = one_arr.length.toString(2);
cnt ++;
}
return [cnt, sum];
}
2차
function solution(s) {
let answer = [0,0];
while(s.length > 1) {
answer[0]++;
answer[1] += (s.match(/0/g)||[]).length;
s = s.replace(/0/g, '').length.toString(2);
}
return answer;
}
리뷰
- match와 replace를 활용한 조건, 배열 값 변환 시도 필요
'문제 풀이 > 프로그래머스' 카테고리의 다른 글
[Programmers] Lv1. 나머지 구하기 (JavaScript) (0) | 2023.11.19 |
---|---|
[Programmers] Lv1. 짝수와 홀수 (JavaScript) (0) | 2023.11.19 |
[Programmers] Lv2. 올바른 괄호 (JavaScript) (0) | 2023.11.12 |
[Programmers] Lv2. 최솟값 만들기 (JavaScript) (0) | 2023.11.12 |
[Programmers] Lv2. JadenCase 문자열 만들기 (JavaScript) (0) | 2023.11.06 |
Comments