Menu
CoddyTech

Number of 1 Bits

Se te da un entero no negativo n. Escribe n en binario y devuelve cuántos de sus dígitos son 1. A este recuento también se le llama número de bits activados, recuento de población o peso de Hamming. Por ejemplo, 6 es 110 en binario, así que tiene dos bits 1.

Función

hammingWeight(n: integer) → integer
ninteger
un entero no negativo que cabe en un entero con signo de 32 bits
Devuelveinteger
el número de dígitos 1 en la forma binaria de n

Restricciones

  • 0 ≤ n ≤ 231-1

Ejemplos

Entrada
n = 11
Salida
3
Explicación
11 es 1011 en binario, que equivale a 8 + 2 + 1. Tres de sus cuatro dígitos binarios son 1, así que la respuesta es 3.
challenge icon

Para ir más allá

Si esta función se ejecutara millones de veces, ¿cómo podrías contar los bits de un número de 32 bits con cuatro consultas a una tabla de 256 recuentos precalculados?

Restablecer código
def hammingWeight(n):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumento

n = 11

Salida Esperada

3