[go: up one dir, main page]

login
A094510
Smallest number distinct from n, not occurring earlier and having in binary representation exactly as many ones as n.
3
2, 1, 5, 8, 3, 9, 11, 4, 6, 12, 7, 10, 14, 13, 23, 32, 18, 17, 21, 24, 19, 25, 15, 20, 22, 28, 29, 26, 27, 39, 47, 16, 34, 33, 37, 40, 35, 41, 30, 36, 38, 44, 45, 42, 43, 51, 31, 65, 50, 49, 46, 56, 54, 53, 59, 52, 58, 57, 55, 71, 62, 61, 95, 128, 48, 68, 69, 66, 67, 73, 60
OFFSET
1,1
COMMENTS
a(a(n))=n: a self-inverse permutation of natural numbers.
PROG
(Haskell)
import Data.List (delete)
a094510 n = a094510_list !! (n-1)
a094510_list = f 1 [1..] where
f x zs = g zs where
g (y:ys) = if y /= x && a000120 y == wt
then y : f (x + 1) (delete y zs) else g ys
wt = a000120 x
-- Reinhard Zumkeller, Nov 23 2014
CROSSREFS
KEYWORD
nonn
AUTHOR
Reinhard Zumkeller, May 06 2004
STATUS
approved