OFFSET
1,2
MAPLE
s := proc(n) option remember; `if`(n < 1, 0, a(n) + s(n - 1)) end proc:
a := proc(n) option remember;
`if`(n < 4, [1, 2, 1][n], s(n - 1) - a(-2^ceil(log[2](n - 1)) + 2*n - 2)):
end proc:
seq(a(n), n = 1..40); # Petros Hadjicostas, Nov 20 2019
PROG
(PARI) lista(nn) = {my(va = vector(nn), s); va[1] = 1; va[2] = 2; va[3] = 1; s = sum(k=1, 3, va[k]); for (n=4, nn, va[n] = s - va[2*n - 2 - 2^ceil(log(n-1)/log(2))]; s += va[n]; ); va; } \\ Petros Hadjicostas, Nov 20 2019 by modifying a program of Michel Marcus
CROSSREFS
KEYWORD
nonn
AUTHOR
EXTENSIONS
Name edited by Petros Hadjicostas, Nov 20 2019
STATUS
approved