느려도 한걸음씩

문제 8 - 이진 변환 반복하기(시뮬레이션) 본문

알고리즘/코테대비 100문제

문제 8 - 이진 변환 반복하기(시뮬레이션)

hoj0806 2025. 2. 6. 18:23

문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/70129

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

문제

 

 

내 정답 코드

function solution(s) {
    let answer = [0, 0]
    let n = s

    while(n != 1) {
        let arr = n.split('')
        let filter = arr.filter((i) => i !== '0')
        answer[1]+= arr.length - filter.length
        let newStr = filter.join('')
        n = newStr.length.toString(2)
        answer[0]+=1
    }
    return answer
}