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”).

A334052
Variant of Van Eck's sequence: Set a(1) = 1, a(2) = 0, a(3) = 1. Thereafter, a(n) is the minimum positive offset i from a(n-1) such that some partial sum a(n-1-i)+...+a(n-1-i+k) = a(n-1) (0 <= k < i).
0
1, 0, 1, 2, 3, 2, 2, 1, 5, 3, 3, 1, 4, 2, 7, 3, 5, 5, 1, 7, 5, 3, 6, 5, 3, 3, 1, 8, 4, 3, 4, 2, 18, 10, 17, 12, 8, 9, 8, 2, 8, 2, 2, 1, 17, 7, 16, 20, 5, 7, 4, 9, 14, 13, 3, 12, 7, 7, 1, 15, 3, 6, 31, 25, 5, 16, 7, 9, 7, 2, 27, 15, 12, 17, 29, 2, 6, 15, 6, 2, 4, 30, 18, 15, 6
OFFSET
1,4
COMMENTS
Conjecture: this sequence is defined. That is, each a(n-1) appears as a partial sum starting from some offset.
EXAMPLE
For n=3 (the first term after the initial conditions), we are looking for a run that sums to a(2) = 1 (and doesn't include a(2)). The most recent such run starts at a(1) = 1, and goes for one place. So a(3) = 2, the distance from a(n-1) to the beginning of the run.
For n=4, we are looking for a run that sums to 2. The last such run is a(1) + a(2) + a(3), at a distance of 3 away. so a(4) = 3.
PROG
(Haskell)
findSumRun target index runLength sum (x:xs)
| sum == target = index + runLength
| runLength == 0 = findSumRun target index 1 x (x:xs)
| sum > target = findSumRun target (index+1) (runLength-1) (sum-x) xs
| sum < target = findSumRun target index (runLength+1) (sum + ((x:xs)!!(runLength))) (x:xs)
step (x:xs) = findSumRun x 0 0 0 xs
seq 0 xs = xs
seq n xs = ves (n-1) ((step xs):xs)
CROSSREFS
Similar to A181391. Along the same lines as A333210, which looks for pairs with a particular sum. By adding a restriction that the runs have a maximum length of 1, we recover Van Eck's sequence.
Sequence in context: A049342 A112966 A286657 * A160570 A128830 A090387
KEYWORD
nonn
AUTHOR
Ethan Goldberg, Sep 06 2020
STATUS
approved