반응형
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
** Javascript
예전에 미리 풀었어서 몇 점 받았는지 기억이 안 남
function solution(s) {
let count = 0;
let zeros = 0;
while (s !== "1") {
zeros += (s.match(/0/g) || []).length;
s = s.replace(/0/g, "").length.toString(2);
count++;
}
return [count, zeros];
}
** Python
def solution(s):
c = 1
answer = [0, 0]
while s != "1":
zeros = [x for x in s if x == "0"]
ones = [x for x in s if x == "1"]
answer[1] += len(zeros)
answer[0] += 1
s = format(len(ones), 'b')
return answer
역시 추천 많이 받은 풀이는 이유가 있다
def solution(s):
a, b = 0, 0
while s != '1':
a += 1
num = s.count('1')
b += len(s) - num
s = bin(num)[2:]
return [a, b]
반응형
'프로그래머스 > level 2' 카테고리의 다른 글
[프로그래머스] 교점에 별 만들기 (0) | 2022.03.03 |
---|---|
[프로그래머스] 캐시 (0) | 2022.03.03 |
[프로그래머스] 점프와 순간 이동 (0) | 2022.02.25 |
[프로그래머스] 타겟 넘버 (0) | 2022.02.14 |
[프로그래머스] 빛의 경로 사이클 (0) | 2022.02.07 |