A352784 a(n) = w(n - w(n)), where w(n) is the binary weight of n, A000120(n).
0, 0, 1, 1, 2, 2, 1, 1, 3, 3, 1, 1, 2, 2, 3, 3, 4, 4, 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 3, 3, 3, 3, 5, 5, 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 3, 3, 3, 3, 4, 4, 5, 5, 3, 3, 3, 3, 4, 4, 4, 4, 3, 3, 4, 4, 6, 6, 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 3, 3, 3, 3, 4, 4, 5, 5, 3, 3, 3, 3, 4, 4, 4, 4, 3, 3, 4, 4, 5, 5, 6, 6, 3, 3, 3, 3, 4, 4, 4, 4
Offset: 0
Examples
a(8) = A000120(8 - A000120(8)) = 3.
Links
- Michael S. Branicky, Table of n, a(n) for n = 0..10000
Programs
-
Maple
a:= n-> (w-> w(n-w(n)))(k-> add(i, i=Bits[Split](k))): seq(a(n), n=0..120); # Alois P. Heinz, May 24 2022
-
Mathematica
w[n_] := DigitCount[n, 2, 1]; a[n_] := w[n - w[n]]; Array[a, 100, 0] (* Amiram Eldar, Apr 02 2022 *)
-
Python
def w(n): return bin(n).count("1") def a(n): return w(n - w(n)) print([a(n) for n in range(108)]) # Michael S. Branicky, Apr 02 2022