Programmers

[프로그래머스 / 파이썬 풀이] 다음 큰 숫자

Hoo_Dev 2023. 2. 10. 10:28
def solution(n):
    
    def changeBinary(n):
        arr = []
        x = n
        while x >= 1:
            arr.append(x%2)
            x //= 2
        return arr

    for i in range(n+1, 1000001):
        if changeBinary(i).count(1) == changeBinary(n).count(1):
            return i
        
    answer = 0
    return answer

10진법을 2진법으로 변환하는 함수를 작성하고 입력받은 값보다 큰 수 부터 순회하는 for문을 통해 해당 숫자를 2진법으로 변환 후 1의 개수를 비교한다.