2019年10月19日土曜日

[Python]10進数の正の整数を2進数表示した後のビット数を数える。

問題

0以上の整数を入力とし、バイナリビットに変換したときの1の数を返す関数を記述せよ。

例: 入力:1234 のバイナリビットは10011010010。このとき、関数の戻り値は5。

解答

def countBits(n):
    return bin(n).count("1")