Menu
CoddyTech

Number of 1 Bits

Otrzymujesz nieujemną liczbę całkowitą n. Zapisz n w systemie binarnym i zwróć liczbę cyfr równych 1. Ta liczba jest również nazywana liczbą ustawionych bitów, liczbą jedynek lub wagą Hamminga. Na przykład 6 w systemie binarnym to 110, więc ma dwa bity równe 1.

Funkcja

hammingWeight(n: integer) → integer
ninteger
nieujemna liczba całkowita mieszcząca się w 32-bitowej liczbie całkowitej ze znakiem
Zwracainteger
liczba cyfr 1 w postaci binarnej liczby n

Ograniczenia

  • 0 ≤ n ≤ 231-1

Przykłady

Wejście
n = 11
Wyjście
3
Wyjaśnienie
11 w systemie binarnym to 1011, czyli 8 + 2 + 1. Trzy z jego czterech cyfr binarnych to 1, więc odpowiedź to 3.
challenge icon

Pytanie dodatkowe

Jeśli ta funkcja wykonałaby się miliony razy, jak można policzyć bity liczby 32-bitowej za pomocą czterech odwołań do tabeli zawierającej 256 wcześniej obliczonych liczników?

Zresetuj kod
def hammingWeight(n):
    # Wpisz kod tutaj

Test #1

Test #2

Test #3

Argument

n = 11

Oczekiwany wynik

3