반응형

 

안녕하세요 Henry입니다~

 

오늘은 프로그래머스의 Level 2 문제인 "다음 큰 숫자" 문제를 풀어보았습니다.

 

코딩테스트를 보시면서, 함수를 정의하여 사용하는 방법을 체험해볼 수 있는 좋은 문제라고 생각됩니다.

 

아래는 저의 코드입니다.

def solution(n):
    answer = 0
    target_one_count = get_one_count_from_binary_number(n)
    current_n = n
    while True:
        current_n += 1
        current_one_count = get_one_count_from_binary_number(current_n)
        if current_one_count == target_one_count:
            return current_n
    return answer

def get_one_count_from_binary_number(num: int) -> int:
    return_value: int = 0
    while True:
        num, remainder = divmod(num, 2)
        return_value += remainder
        if num == 0:
            return return_value

 

 

아래는 문제 풀이 영상입니다.

https://youtu.be/jV196NiV1mk

 

반응형

+ Recent posts