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

A373284
Number of permutations of {1, 2, 3, ..., n} that result in a final value of 0 by repeatedly iterating the process of "subtracting if the next item is greater or equal, otherwise adding" until there's only one number left.
0
0, 0, 1, 1, 3, 10, 52, 459, 1271, 10094, 63133, 547565, 4431517, 42046100, 400782747, 8711476734
OFFSET
1,5
COMMENTS
Let x_0 be a permutation on {1, 2, 3, ..., n}. Let x_k(i) be a function defined when 0 < i <= n - k that is constructed as follows:
If x_k(i + 1) >= x_k(i), then x_{k+1}(i) = x_k(i + 1) - x_k(i).
Otherwise, x_{k+1}(i) = x_k(i + 1) + x_k(i).
a(n) is the number of permutations x_0 that satisfy x_{n-1}(1) = 0.
Comments from Olivier Gérard, Jun 04 2024 (Start)
The sequence of number of different values is:
1, 2, 4, 9, 32, 75, 179, 230, 933
The sequence of maxima of this process is A001792:
1, 3, 8, 20, 48, 112, 256, 576, 1280
Indeed, the maxima is attained only once and always for the last permutation in lexicographic order : n, n-1, n-2, ..., 1 (End).
EXAMPLE
For n=5, one of the a(5) = 3 solutions is (1, 4, 5, 2, 3), whose trajectory to 0 is
1 4 5 2 3
3 1 7 1
4 6 8
2 2
0
PROG
(Python)
from itertools import permutations
def f(t):
if len(t) == 1: return t[0]
return f([t[i]+t[i+1] if t[i+1]<t[i] else t[i+1]-t[i] for i in range(len(t)-1)])
def a(n): return sum(1 for p in permutations(range(1, n+1)) if f(p) == 0)
print([a(n) for n in range(1, 10)]) # Michael S. Branicky, May 30 2024
CROSSREFS
Sequence in context: A363209 A052446 A362062 * A290489 A002873 A309910
KEYWORD
nonn,nice,hard,more
AUTHOR
Bryle Morga, May 30 2024
EXTENSIONS
a(12)-a(13) from Michael S. Branicky, May 30 2024
a(14)-a(16) from Bert Dobbelaere, Jun 09 2024
STATUS
approved