login
a(n) = 1 for n<1; for n >= 0, a(n+1) = 2*a(n-a(n)).
7

%I #14 Dec 30 2019 19:32:48

%S 2,2,2,4,2,4,4,4,8,4,8,4,8,4,8,8,8,16,4,16,8,16,8,16,8,16,8,8,32,2,16,

%T 16,16,16,32,4,32,4,32,8,32,16,32,16,16,64,2,32,16,32,32,8,32,16,8,4,

%U 16,64,2,32,16,32,4,4,64,4,64,4,8,32,8,8,8,128

%N a(n) = 1 for n<1; for n >= 0, a(n+1) = 2*a(n-a(n)).

%C From the current term count back the same number of terms and double it to obtain the next term. Because a(n) can exceed n, negative indexes are also occasionally referenced.

%e a(1) = 2*a(0-a(0)) = 2*a(-1) = 2.

%e a(2) = 2*a(1-a(1)) = 2*a(-1) = 2.

%e a(3) = 2*a(2-a(2)) = 2*a(0) = 2.

%e a(4) = 2*a(3-a(3)) = 2*a(1) = 4.

%o (Python)

%o a = [2]

%o for n in range(1000):

%o if(a[n] > n):

%o a.append(2)

%o else:

%o a.append(2*a[n-a[n]])

%Y Cf. A281130, A070867, A004001.

%K nonn

%O 1,1

%A _Rok Cestnik_, Dec 30 2019