login
a(1)=1; thereafter, a(2n)=a(n), a(2n+1) is the smallest positive number such that |a(2n+1)-a(2n-1)|=a(n).
10

%I #16 Jan 12 2014 12:33:14

%S 1,1,2,1,1,2,3,1,2,1,1,2,3,3,6,1,5,2,3,1,2,1,1,2,3,3,6,3,3,6,9,1,8,5,

%T 3,2,1,3,4,1,3,2,1,1,2,1,1,2,3,3,6,3,3,6,9,3,6,3,3,6,9,9,18,1,17,8,9,

%U 5,4,3,1,2,3,1,2,3,5,4,1,1,2,3,5,2,3,1,2,1,1,2,3,1,2,1,1,2,3,3,6,3,3,6,9,3

%N a(1)=1; thereafter, a(2n)=a(n), a(2n+1) is the smallest positive number such that |a(2n+1)-a(2n-1)|=a(n).

%C A variant of the semi-Fibonacci numbers A030067.

%C Self-describing: the sequence of the absolute differences between odd-indexed terms is the sequence itself.

%C It appears that the record values form sequence A038754 and occur at indices of the form 2^k-1. - _N. J. A. Sloane_, May 02 2010

%C Does the sequence contain every positive integer (cf. A169741)?

%H N. J. A. Sloane, <a href="/A109671/b109671.txt">Table of n, a(n) for n = 1..10000</a>

%p f:=proc(n) option remember; local t1;

%p if n = 1 then 1

%p elif n mod 2 = 0 then f(n/2)

%p else t1:= f(n-2)-f((n-1)/2);

%p if t1 > 0 then t1 else f(n-2)+f((n-1)/2) fi fi end;

%t a[1] = 1; a[n_?EvenQ] := a[n/2]; a[n_] := a[n] = If[t1 = a[n-2] - a[(n-1)/2]; t1 > 0, t1, a[n-2] + a[(n-1)/2]]; Table[a[n], {n, 1, 104}] (* _Jean-François Alcover_, Nov 27 2012, after Maple *)

%o (Haskell)

%o import Data.List (transpose)

%o a109671 n = a109671_list !! (n-1)

%o a109671_list = concat (transpose [1 : f 1 a109671_list, a109671_list])

%o where f u (v:vs) = y : f y vs where

%o y = if u > v then u - v else u + v

%o -- _Reinhard Zumkeller_, Jul 07 2013

%Y A variant of A030067. Cf. A169741-A169745.

%K nonn,nice

%O 1,3

%A _Eric Angelini_, Apr 30 2010

%E Edited by _N. J. A. Sloane_, May 02 2010