자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다.
예를 들어서 78(1001110)의 다음 큰 숫자는 83(1010011)입니다.
자연수 n이 매개변수로 주어질 때, n의 다음 큰 숫자를 return 하는 solution 함수를 완성해주세요.
| n | result |
|---|---|
| 78 | 83 |
| 15 | 23 |
def solution(n):
num = bin(n).count('1')
while True:
n += 1
if num == bin(n).count('1'):
break
return n
이번문제는 10진수를 2진수로 변환할 수 있는 bin()을 알고 있다면 쉽게 해결할 수 있다.
bin()으로 진수 변환 후 count()를 통해 개수 비교를 통해 answer을 찾아낸다.