OFFSET
1,2
COMMENTS
LINKS
FORMULA
Let L(n)=floor(3n/2).
Let U(n)=3n-1. U is the complement of L.
The tree-array T(n,k) is then given by rows:
T(0,0)=1; T(1,0)=2;
T(n,2j)=L(T(n-1),j);
T(n,2j+1)=U(T(n-1),j);
for j=0,1,...,2^(n-1)-1, n>=2.
From Antti Karttunen, Jan 26 2015: (Start)
a(1) = 1, a(2n) = (3*a(n))-1, a(2n+1) = A032766(a(n+1)) = floor((3*a(n+1))/2).
Other identities:
(End)
EXAMPLE
First levels of the tree:
1
2
3 5
4 8 7 14
MAPLE
f:= proc(n) option remember;
if n::even then 3*procname(n/2)-1
else floor(3*procname((n+1)/2)/2)
fi
end proc:
f(1):= 1:
seq(f(n), n=1..100); # Robert Israel, Jan 26 2015
MATHEMATICA
a[1]=1; a[n_] := a[n] = If[EvenQ[n], 3a[n/2]-1, Floor[3a[(n+1)/2]/2] ]; Array[a, 100] (* Jean-François Alcover, Feb 02 2018 *)
PROG
(Scheme, with memoizing macro definec)
(definec (A183209 n) (cond ((<= n 1) n) ((even? n) (A016789 (- (A183209 (/ n 2)) 1))) (else (A032766 (A183209 (/ (+ n 1) 2))))))
;; Antti Karttunen, Jan 26 2015
(Haskell)
import Data.List (transpose)
a183209 n k = a183209_tabf !! (n-1) !! (k-1)
a183209_row n = a183209_tabf !! (n-1)
a183209_tabf = [1] : iterate (\xs -> concat $
transpose [map a032766 xs, map (a016789 . subtract 1) xs]) [2]
a183209_list = concat a183209_tabf
-- Reinhard Zumkeller, Jun 27 2015
(Python)
def a(n):
if n==1: return 1
if n%2==0: return 3*a(n//2) - 1
else: return (3*a((n - 1)//2 + 1))//2
print([a(n) for n in range(1, 101)]) # Indranil Ghosh, Jun 06 2017
CROSSREFS
KEYWORD
AUTHOR
Clark Kimberling, Dec 30 2010
EXTENSIONS
Formula to the name-field added by Antti Karttunen, Jan 26 2015
STATUS
approved