OFFSET
1,2
COMMENTS
If one deletes the first occurrence of 1, the first occurrence of 2, the first occurrence of 3, etc., then the sequence is unchanged. - Brady J. Garvin, Sep 11 2024
Any signature sequence A is closely related to the partial sums of the corresponding homogeneous Beatty sequence: Let Q(d) = d + the sum from g=0 to g=d-1 of floor(theta * g) and Qinv(i) = the maximum integer d such that Q(d) <= i. If there is some d for which Q(d) = i, then A_i = 1. Otherwise, A_i = A_{i - Qinv(i)} + 1. - Brady J. Garvin, Sep 13 2024
REFERENCES
Clark Kimberling, "Fractal Sequences and Interspersions", Ars Combinatoria, vol. 45 p 157 1997.
LINKS
T. D. Noe, Table of n, a(n) for n=1..1000
Clark Kimberling, Interspersions
MATHEMATICA
Quiet[Block[{$ContextPath}, Needs["Combinatorica`"]], {General::compat}]
theta = E;
sums = {0};
cached = <||>;
A023123[i_] := Module[{term, path, base},
While[sums[[-1]] < i,
term = sums[[-1]] + Floor[theta * (Length[sums] - 1)] + 1;
AppendTo[sums, term];
cached[term] = 1
];
path = {i};
While[Not[KeyExistsQ[cached, path[[-1]]]],
AppendTo[path, path[[-1]] - Combinatorica`BinarySearch[sums, path[[-1]]] + 3/2];
];
base = cached[path[[-1]]];
MapIndexed[(cached[#1] = base + Length[path] - First[#2]) &, path];
cached[i]
];
Print[Table[A023123[i], {i, 1, 100}]]; (* Brady J. Garvin, Sep 13 2024 *)
PROG
(Python)
from bisect import bisect
from sympy import floor, E
theta = E
sums = [0]
cached = {}
def A023123(i):
while sums[-1] < i:
term = sums[-1] + floor(theta * (len(sums) - 1)) + 1
sums.append(term)
cached[term] = 1
path = [i]
while path[-1] not in cached:
path.append(path[-1] - bisect(sums, path[-1]) + 1)
base = cached[path[-1]]
for offset, vertex in enumerate(reversed(path)):
cached[vertex] = base + offset
return cached[i]
print([A023123(i) for i in range(1, 1001)]) # Brady J. Garvin, Sep 13 2024
CROSSREFS
KEYWORD
nonn,easy,nice,eigen
AUTHOR
EXTENSIONS
The a(47) term was missing. Corrected by T. D. Noe, Aug 12 2008
STATUS
approved