A142149 a(n) = XOR{k OR (n-k): 0<=k<=n}.
0, 1, 3, 3, 6, 5, 5, 7, 12, 9, 15, 11, 10, 13, 9, 15, 24, 17, 27, 19, 30, 21, 29, 23, 20, 25, 23, 27, 18, 29, 17, 31, 48, 33, 51, 35, 54, 37, 53, 39, 60, 41, 63, 43, 58, 45, 57, 47, 40, 49, 43, 51, 46, 53, 45, 55, 36, 57, 39, 59, 34, 61, 33, 63, 96, 65, 99, 67, 102, 69, 101, 71
Offset: 0
Links
- Reinhard Zumkeller, Table of n, a(n) for n = 0..10000
- Reinhard Zumkeller, Logical Convolutions
Programs
-
Haskell
import Data.Bits (xor, (.|.)) a142149 :: Integer -> Integer a142149 = foldl xor 0 . zipWith (.|.) [0..] . reverse . enumFromTo 1 -- Reinhard Zumkeller, Mar 31 2015
-
PARI
a(n)=if(n%2, n, bitxor(n, n/2)) \\ Charles R Greathouse IV, Jul 01 2022
-
Python
def A142149(n): return n if n&1 else (n^ n>>1) # Chai Wah Wu, Jun 29 2022
Comments