Menu
CoddyTech

Power of Two

Você recebe um número inteiro n. Retorne true se n for uma potência de dois, ou seja, n = 2^k para algum número inteiro k ≥ 0, e false caso contrário. Portanto, 1, 2, 4 e 8 contam, enquanto 0, 6 e todos os números negativos não contam.

Função

isPowerOfTwo(n: integer) → boolean
ninteger
o inteiro a ser testado, que pode ser zero ou negativo
Retornaboolean
true se n for igual a 2^k para algum k ≥ 0, false caso contrário

Restrições

  • -231 ≤ n ≤ 231-1

Exemplos

Entrada
n = 16
Saída
true
Explicação
16 = 2 × 2 × 2 × 2 = 2^4. Em binário, é 10000, um único bit 1.

lock icon+17 testes ocultos ao enviar

challenge icon

Para ir além

Com os mesmos truques de bits, você consegue testar se n é uma potência de quatro sem usar um loop?

Redefinir código
def isPowerOfTwo(n):
    # Escreva o código aqui
Casos de teste

Caso 1

Caso 2

Caso 3

Entrada

n = 16

Esperado

true