A053642 Rotate n one binary digit to the left, drop leading zeros, then rotate one binary digit to the right.
1, 1, 3, 1, 3, 6, 7, 1, 3, 6, 7, 12, 13, 14, 15, 1, 3, 6, 7, 12, 13, 14, 15, 24, 25, 26, 27, 28, 29, 30, 31, 1, 3, 6, 7, 12, 13, 14, 15, 24, 25, 26, 27, 28, 29, 30, 31, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 1
Offset: 1
Examples
a(22)=14 because starting with 10110 the left rotation produces 01101 written as 1101 (i.e., 13) and the right rotation produces 1110 (i.e., 14).
Links
- Paolo Xausa, Table of n, a(n) for n = 1..10000
Programs
-
Mathematica
rtt[f_, n_] := FromDigits[f[IntegerDigits[n, 2]], 2]; Array[rtt[RotateRight, rtt[RotateLeft, #]]&, 100] (* Paolo Xausa, Jan 16 2024 *)
-
PARI
a(n) = n-=1<
Kevin Ryde, Jan 13 2024
Formula
a(n) = n if 3*2^(k-1) <= n < 2^(k+1);
a(n) = a(n - 2^(k-1)) if 2^k <= n < 3*2^(k-1).
a(2n) = 2a(n) - [a(n)==1], a(2n+1) = 2a(n) + 1. - Ralf Stephan, Sep 16 2003
Comments