0보다 큰 숫자가 있다고 가정하면 숫자가 2의 거듭제곱인지 확인해야 합니다.
따라서 입력이 1024와 같으면 출력은 True가 됩니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
-
n> 1일 때 수행
-
n :=n / 2
-
-
n이 1과 같으면 true를 반환하고 그렇지 않으면 0
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
예
class Solution: def solve(self, n): while n > 1: n /= 2 return n == 1 ob = Solution() print(ob.solve(1024))
입력
1024
출력
True