Menu
CoddyTech

Power of Two

쉬움비트 조작python iconjava iconcpp iconc iconjs icon+10

정수 n이 주어집니다. n이 2의 거듭제곱, 즉 어떤 정수 k ≥ 0에 대해 n = 2^k이면 true를 반환하고, 그렇지 않으면 false를 반환하세요. 따라서 1, 2, 4, 8은 해당하지만, 0, 6 및 모든 음수는 해당하지 않습니다.

함수

isPowerOfTwo(n: integer) → boolean
ninteger
테스트할 정수(0 또는 음수일 수도 있음)
반환값boolean
n이 어떤 k ≥ 0에 대해 2^k와 같으면 true, 그렇지 않으면 false

제약 조건

  • -231 ≤ n ≤ 231-1

예제

입력
n = 16
출력
true
설명
16 = 2 × 2 × 2 × 2 = 2^4. 2진수로는 10000이며, 1비트가 하나입니다.

lock icon제출 시 숨은 테스트 +17개

challenge icon

후속 질문

같은 비트 트릭으로, 루프 없이 n이 4의 거듭제곱인지 확인할 수 있나요?

코드 초기화
def isPowerOfTwo(n):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

n = 16

기대값

true