%I #19 Mar 06 2018 07:23:48
%S 1,0,2,1,2,1,3,2,2,1,3,2,3,2,4,3,2,1,3,2,3,2,4,3,3,2,4,3,4,3,5,4,2,1,
%T 3,2,3,2,4,3,3,2,4,3,4,3,5,4,3,2,4,3,4,3,5,4,4,3,5,4,5,4,6,5,2,1,3,2,
%U 3,2,4,3,3,2,4,3,4,3,5,4,3,2,4,3,4,3,5,4,4,3
%N 1's distance from a number in its binary expansion.
%C To generate the value for n, write out n's decimal expansion. Then, write out 1's decimal expansion (0000000000....001). Compute how many times you need to change 0 to a 1 or a 1 to a 0 in order to switch from one number to the other.
%C The value for 2^x is always 2. The value for 2^x +1 is always 1. The value for 2^x -1 is always x-1 when x > 0. To get to 2^x, you need to drop the 1 at the beginning and add the 1 in the 2^x place value.
%C For 2^x + 1, you need to add the 1 in the 2^n place value, but you keep the 1 in the 1s place value. Thus you are only adding or getting rid of 1 digit.
%C For 2^x -1, it will have x digits, and all of them will be 1's. You already have 1 in the 1's place value, so there are n-1 digits left over.
%F a(n) = A000120(n) + (-1)^n. - _Michel Marcus_, Jul 14 2016
%t Table[If[OddQ@ n, # - 1, # + 1] &@ DigitCount[n, 2, 1], {n, 0, 120}] (* _Michael De Vlieger_, Jul 13 2016 *)
%o (PARI) a(n) = hammingweight(n) + (-1)^n; \\ _Michel Marcus_, Jul 14 2016
%Y Cf. A000120.
%K nonn,base
%O 0,3
%A _William K. Grannis_, Jun 06 2016
%E More terms from _Michel Marcus_, Jul 13 2016
|