문제
https://programmers.co.kr/learn/courses/30/lessons/70129?language=javascript
코드
- 정규 표현식 이용
function solution(s) {
let answer = [0,0];
while (s != "1") {
answer[0] += 1;
answer[1] += s.length
s = s.replace(/0/g, '') //0제외
answer[1] -= s.length //1의 개수 빼기
s = s.length.toString(2)
}
return answer;
}
replace부분에 정규표현식을 사용해서 모든 0을 제거할 수 있었다.
다른 코드
function solution(s) {
var 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;
}
'⏳ 알고리즘 > JavaScript 알고리즘' 카테고리의 다른 글
프로그래머스 - LV2. 점프와 순간 이동(2018 S/W Coding ) (0) | 2021.07.09 |
---|---|
프로그래머스 - LV2. 오픈채팅방(카카오 2019 블라인드 채용) (0) | 2021.07.04 |
프로그래머스 - LV2. 기능개발 (0) | 2021.06.28 |
프로그래머스 - LV2. 짝지어 제거하기(2017 팁스타운) (0) | 2021.06.21 |
프로그래머스 - LV1. 키패드 누르기(카카오 2020 인턴쉽) (0) | 2021.06.21 |