A049885 a(n) = a(1) + a(2) + ... + a(n-1) - a(m) for n >= 4, where m = 2^(p+1) + 2 - n and p is the unique integer such that 2^p < n - 1 <= 2^(p+1), starting with a(1) = a(2) = a(3) = 1.
1, 1, 1, 2, 4, 7, 15, 30, 60, 91, 197, 402, 807, 1616, 3233, 6466, 12932, 19399, 42031, 85679, 172167, 344739, 689683, 1379472, 2758975, 5517980, 11035975, 22071958, 44143919, 88287840, 176575681, 353151362, 706302724, 1059454087
Offset: 1
Keywords
Examples
From _Petros Hadjicostas_, Nov 07 2019: (Start) a(4) = -a(2^ceiling(log_2(4-1)) + 2 - 4) + a(1) + a(2) + a(3) = -a(2) + a(1) + a(2) + a(3) = 2. a(5) = -a(2^ceiling(log_2(5-1)) + 2 - 5) + a(1) + a(2) + a(3) + a(4) = -a(1) + a(1) + a(2) + a(3) + a(4) = 4. a(6) = -a(2^ceiling(log_2(6-1)) + 2 - 6) + a(1) + a(2) + a(3) + a(4) + a(5) = -a(4) + a(1) + a(2) + a(3) + a(4) + a(5) = 7. a(7) = -a(7 - 1 - A006257(7-2)) + Sum_{i = 1..6} a(i) = -a(3) + Sum_{i = 1..6} a(i) = 15. a(8) = -a(8 - 1 - A006257(8-2)) + Sum_{i = 1..7} a(i) = -a(2) + Sum_{i = 1..7} a(i) = 30. (End)
Programs
-
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, s(n - 1) - a(Bits:-Iff(n - 2, n - 2) + 3 - n)): end proc: seq(a(n), n = 1..34); # Petros Hadjicostas, Nov 07 2019
-
PARI
lista(nn) = { my(va = vector(nn)); va[1] = 1; va[2] = 1; va[3] = 1; my(sa = vecsum(va)); for (n=4, nn, va[n] = sa - va[2 - n + 2^ceil(log(n-1)/log(2))]; sa += va[n]; ); va; } \\ Petros Hadjicostas, Apr 27 2020 (with nn > 2)
Formula
From Petros Hadjicostas, Nov 07 2019: (Start)
a(n) = -a(2^ceiling(log_2(n-1)) + 2 - n) + Sum_{i = 1..n-1} a(i) for n >= 4.
a(n) = -a(n - 1 - A006257(n-2)) + Sum_{i = 1..n-1} a(i) for n >= 4. (End)
Extensions
Name edited by Petros Hadjicostas, Nov 07 2019