리트 코드를 꾸준히 푼 덕택일까 원래는 못풀던 문제가 술술 풀린다.
나의 풀이.
def solution(n):
answer = 0
cnt = bin(n)[2:].count("1")
while True:
n += 1
if bin(n)[2:].count("1") == cnt:
return n
#1의 숫자가 일정해야 한다..1의 숫자가 5개인 모든 수의 리스트를 만들 수 있지 않을까?
1의 개수는 일정해야 한다.
count함수로 주어진 n에 포함된 1의 개수를 세고,
n을 1 씩 증가시켜,
n보다 크면서 포함된 1의 개수가 큰 이진수를 만났을때 n을 반환한다.
댓글