A374625 In the binary expansion of n, expand bits 1 -> 01 and 0 -> 10.
2, 1, 6, 5, 26, 25, 22, 21, 106, 105, 102, 101, 90, 89, 86, 85, 426, 425, 422, 421, 410, 409, 406, 405, 362, 361, 358, 357, 346, 345, 342, 341, 1706, 1705, 1702, 1701, 1690, 1689, 1686, 1685, 1642, 1641, 1638, 1637, 1626, 1625, 1622, 1621, 1450, 1449, 1446
Offset: 0
Examples
a(5) = 25 because: 5 is 101 and: 1 | 0 | 1 01 | 10 | 01 And: 11001 is 25.
References
- Andrew S. Tanenbaum, Computer Networks (4th ed.), Prentice Hall, 2002, Pages 274-275, ISBN 0-13-066102-3.
Links
- Paolo Xausa, Table of n, a(n) for n = 0..10000
- Ralf Stephan, Divide-and-conquer generating functions. I. Elementary sequences, arXiv:math/0307027 [math.CO], 2003, equation 2.4 with a(n) = a_n for case alpha=4, c=2, d=1 and n >= 1.
- Wikipedia, Manchester code.
Programs
-
Maple
a:= n-> 2-(n mod 2)+`if`(n<2, 0, 4*a(iquo(n, 2))): seq(a(n), n=0..50); # Alois P. Heinz, Jul 15 2024
-
Mathematica
A374625[n_] := FromDigits[2 - IntegerDigits[n, 2], 4]; Array[A374625, 100, 0] (* Paolo Xausa, Jul 16 2024 *)
-
Python
def a(n): s='' for b in bin(n)[2:]: s += '01'*(b=='1') + '10'*(b=='0') return int(s,2) print([a(n) for n in range(0,51)])
-
Python
def a(n): d = {'0': '10', '1': '01'} return int(''.join(map(d.get, bin(n)[2:])), 2) print([a(n) for n in range(0,51)]) # Jason Yuen, Jul 15 2024
-
Python
a = lambda n: int(''.join("101"[b=='1':(b=='1')+2] for b in bin(n)[2:]), 2) # Peter Luschny, Jul 15 2024
-
Python
def A374625(n): return ((1<<(n.bit_length()<<1)+1)-2)//3-int(bin(n)[2:],4) if n else 2 # Chai Wah Wu, Jul 16 2024
Comments