[JavaScript] 이진 변환 반복하기

ladiolus·2023년 5월 12일
0

programmers

목록 보기
13/25
post-thumbnail

⏱️ 18:39.47

문자열에서 0을 제거한 "문자열의 길이"를 2진법으로 변경해서 계산한다는 것을 제대로 이해를 못해서 오래걸렸다. 문제를 더 꼼꼼하게 읽어야할 것 같다.


CODE

function solution(s) {
    let removeLen = 0;
    let removeNum = 0;
    
    while(s !== '1'){
        let sLen = s.split('').length;
        s = s.split('').filter(num => num === '1');
        let rLen = s.length;
        
        removeLen += sLen - rLen;
        removeNum += 1;
        
        s = rLen.toString(2);
    }
    return [removeNum, removeLen];
}

0개의 댓글