|
|
A348710
|
|
In the binary expansion of n, decrease the length of each run of 1-bits by one.
|
|
4
|
|
|
0, 0, 0, 1, 0, 0, 2, 3, 0, 0, 0, 1, 4, 2, 6, 7, 0, 0, 0, 1, 0, 0, 2, 3, 8, 4, 4, 5, 12, 6, 14, 15, 0, 0, 0, 1, 0, 0, 2, 3, 0, 0, 0, 1, 4, 2, 6, 7, 16, 8, 8, 9, 8, 4, 10, 11, 24, 12, 12, 13, 28, 14, 30, 31, 0, 0, 0, 1, 0, 0, 2, 3, 0, 0, 0, 1, 4, 2, 6, 7, 0, 0, 0
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,7
|
|
COMMENTS
|
Equivalently, change bits 01 -> 0, including a 0 reckoned above the most significant 1-bit of n so change there.
A single 1-bit run decreases to nothing. The Fibbinary numbers (A003714) are those n with only single 1-bits so that a(n) = 0 iff n is in A003714.
a(n) = 1 iff n is in A213540 since those values end with bits 011 (which become 01) and otherwise have only single 1-bits, as do the Fibbinary numbers.
Decreasing each run is the inverse of the increase A175048 so that a(A175048(k)) = k. This n = A175048(k) is the smallest n with a(n) = k and then other occurrences of k are by inserting single 1-bits into this n, including anywhere above the most significant bit.
|
|
LINKS
|
|
|
EXAMPLE
|
n = 14551 = binary 111 000 11 0 1 0 111
a(n) = 787 = binary 11 000 1 0 0 11
|
|
MATHEMATICA
|
Table[FromDigits[Flatten[Split@IntegerDigits[n, 2]/. {1, a___}:>{a}], 2], {n, 0, 82}] (* Giorgos Kalogeropoulos, Nov 01 2021 *)
|
|
PROG
|
(PARI) a(n) = my(v=binary(n), t=0); for(i=2, #v, if(v[i-1]||!v[i], v[t++]=v[i])); fromdigits(v[1..t], 2);
(Python)
def a(n): return int(bin(n).replace("b", "").replace("01", "0"), 2)
|
|
CROSSREFS
|
|
|
KEYWORD
|
base,easy,nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|