def solution(n):
ans = [] ; nn = n
while nn:
ans.append(nn%2)
nn //= 2
k = ans.count(1)
kk = 0
while k != kk:
n += 1
an = []
t = n
while t:
an.append(t%2)
t //= 2
kk = an.count(1)
return n
풀이
1. 암튼 주어진 n을 이진법으로 만들고 1 갯수를 센다.(k) 2. n에 1씩 더하면서 이진법으로 변경하는데, 이 때 1갯수가 같을 때까지 시행하는 while문 생성. 3. (n+?)를 이진법으로 변경한 뒤의 1 갯수는 kk로 뒀다. 4. k == kk일 때 멈추고 n+?을 출력한다.