login
a(0) = 0, a(1) = 1; for a(n), n >= 2, write n = x^2 + y with y >= 0 as small as possible, then a(n) = a(x) + a(y).
2

%I #18 Oct 07 2017 10:32:20

%S 0,1,2,3,2,3,4,5,4,3,4,5,6,5,6,7,2,3,4,5,4,5,6,7,6,3,4,5,6,5,6,7,8,7,

%T 6,7,4,5,6,7,6,7,8,9,8,7,8,9,10,5,6,7,8,7,8,9,10,9,8,9,10,11,10,11,4,

%U 5,6,7,6,7,8,9,8,7,8,9,10,9,10,11,6,3,4,5,6,5,6,7,8,7,6,7,8,9,8,9,10,5,6

%N a(0) = 0, a(1) = 1; for a(n), n >= 2, write n = x^2 + y with y >= 0 as small as possible, then a(n) = a(x) + a(y).

%C Because of the definition of a(n), a(n^2) = a(n) and more generally a(n^(2m)) = a(n), so the sequence recursively contains itself.

%C a(A064689(n)) = n and a(m) < n for m < A064689(n).

%H Reinhard Zumkeller, <a href="/A064672/b064672.txt">Table of n, a(n) for n = 0..10000</a>

%F For n > 1: a(n) = a(A000196(n)) + a(A053186(n)), a(0) = 0, a(1) = 1. [_Reinhard Zumkeller_, Apr 27 2012]

%e a(7) = 5 because 7 = 2^2 + 3, a(2) = 2 and a(3) = 3, giving 5

%t a[0]=0; a[1]=1; a[n_] := a[n] = a[ Floor[ Sqrt[n] ] ] + a[ n - Floor[ Sqrt[n] ]^2 ]; Table[a[n], {n, 0, 98}] (* _Jean-François Alcover_, May 23 2012, after _Reinhard Zumkeller_ *)

%o (Haskell)

%o a064672 n = a064672_list !! n

%o a064672_list = 0 : 1 : f (drop 2 a000196_list) 1 1 (tail a064672_list)

%o where f (r:rs) r' u (v:vs)

%o | r == r' = (u + v) : f rs r u vs

%o | r /= r' = u' : f rs r u' (tail a064672_list)

%o where u' = a064672 $ fromInteger r

%o -- _Reinhard Zumkeller_, Apr 27 2012

%Y Cf. A064689.

%Y Cf. A048760.

%K nonn,easy,nice

%O 0,3

%A Jonathan Ayres (jonathan.ayres(AT)btinternet.com), Oct 09 2001