A323908 Reversing binary representation of A004718, Per Nørgård's "infinity sequence".
0, 1, 3, 2, 1, 0, 6, 7, 3, 2, 0, 1, 2, 3, 5, 4, 1, 0, 6, 7, 0, 1, 3, 2, 6, 7, 1, 0, 7, 6, 12, 13, 3, 2, 0, 1, 2, 3, 5, 4, 0, 1, 3, 2, 1, 0, 6, 7, 2, 3, 5, 4, 3, 2, 0, 1, 5, 4, 2, 3, 4, 5, 15, 14, 1, 0, 6, 7, 0, 1, 3, 2, 6, 7, 1, 0, 7, 6, 12, 13, 0, 1, 3, 2, 1, 0, 6, 7, 3, 2, 0, 1, 2, 3, 5, 4, 6, 7, 1, 0, 7, 6, 12, 13, 1, 0
Offset: 0
Keywords
Links
Crossrefs
Programs
-
PARI
up_to = 65536; A004718list(up_to) = { my(v=vector(up_to)); v[1]=1; v[2]=-1; for(n=3, up_to, v[n] = if(n%2, 1+v[n>>1], -v[n/2])); (v); }; \\ After code in A004718. v004718 = A004718list(up_to); A004718(n) = if(!n,n,v004718[n]); A048724(n) = bitxor(n, n<<1); A065621(n) = bitxor(n-1,n+n-1); A323908(n) = if(A004718(n)<=0, A048724(-A004718(n)), A065621(A004718(n)));
-
Python
from itertools import groupby def A323908(n): c = 0 for k, g in groupby(bin(n)[2:]): c = c+len(list(g)) if k == '1' else (-c if len(list(g))&1 else c) return -c^(-c<<1) if c<=0 else c^(c&~-c)<<1 # Chai Wah Wu, Mar 02 2023
Comments