Menu
CoddyTech

Power of Two

Otrzymujesz liczbę całkowitą n. Zwróć true, jeśli n jest potęgą dwójki, czyli n = 2^k dla pewnej liczby całkowitej k ≥ 0, a w przeciwnym razie zwróć false. Zatem 1, 2, 4 i 8 się liczą, a 0, 6 i każda liczba ujemna — nie.

Funkcja

isPowerOfTwo(n: integer) → boolean
ninteger
liczba całkowita do sprawdzenia, która może być równa zero lub ujemna
Zwracaboolean
true, jeśli n jest równe 2^k dla pewnego k ≥ 0, w przeciwnym razie false

Ograniczenia

  • -231 ≤ n ≤ 231-1

Przykłady

Wejście
n = 16
Wyjście
true
Wyjaśnienie
16 = 2 × 2 × 2 × 2 = 2^4. W systemie binarnym to 10000, pojedynczy bit 1.

lock icon+17 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

Czy za pomocą tych samych sztuczek bitowych potrafisz sprawdzić, czy n jest potęgą czwórki, bez użycia pętli?

Zresetuj kod
def isPowerOfTwo(n):
    # Wpisz tutaj kod
Przypadki testowe

Przypadek 1

Przypadek 2

Przypadek 3

Wejście

n = 16

Oczekiwane

true