login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A364929
a(0) = 0; for n > 0, if n appears in the sequence then a(n) is the product of the indices of all previous appearances of n. Otherwise a(n) = a(n-1) - n if nonnegative and not already in the sequence, otherwise a(n) = a(n-1) + n.
1
0, 1, 3, 2, 6, 11, 4, 11, 19, 10, 9, 35, 23, 36, 22, 7, 23, 40, 58, 8, 28, 49, 14, 192, 168, 143, 117, 90, 20, 49, 79, 48, 16, 49, 15, 11, 13, 50, 12, 51, 17, 58, 100, 57, 101, 56, 102, 55, 31, 20097, 37, 39, 91, 38, 92, 47, 45, 43, 738, 679, 619, 558, 496, 433, 369
OFFSET
0,3
LINKS
David A. Corneth, PARI program
EXAMPLE
a(2) = 3 = n, thus a(3) = 2.
a(5) = 11, as 5 has not previously appeared in the sequence, but a(4) - 5 = 1 has, thus a(5) = a(4) + 5 = 6 + 5 = 11.
a(5) and a(7) = 11, and 5 * 7 = 35, thus a(11) = 35.
PROG
(PARI) See PARI link
(Python)
from itertools import count, islice
def agen(): # generator of terms
an, p = 0, {0: 0} # data list, map of product of indices
for n in count(1):
yield an
an = p[n] if n in p else an+n if an-n < 0 or an-n in p else an-n
p[an] = p[an]*n if an in p else n
print(list(islice(agen(), 65))) # Michael S. Branicky, Dec 09 2023
CROSSREFS
KEYWORD
nonn
AUTHOR
Kelvin Voskuijl, Dec 05 2023
EXTENSIONS
More terms from David A. Corneth, Dec 09 2023
STATUS
approved