OFFSET
1,1
COMMENTS
Terms must have at least 4 digits. The sequence is finite.
There are 3136837 terms, with the last being 98765432101234567987654321. - Michael S. Branicky, Mar 20 2024
LINKS
Alois P. Heinz, Table of n, a(n) for n = 1..10000
Michael S. Branicky, Alternative Python program for full sequence A371378
James S. DeArmon, LISP Code for A371378
MAPLE
q:= proc(n) local i, l, s;
l, s:= convert(n, base, 10), 1;
for i to nops(l)-1 while s<5 do s:=
`if`(l[i]=l[i+1], 5,
`if`(l[i]<l[i+1], [2$2, 4$2][s], [5, 3$2, 5][s]))
od; is(s=4)
end:
select(isprime and q, [$1..15000])[]; # Alois P. Heinz, Mar 21 2024
MATHEMATICA
Select[Prime[Range[600]], SplitBy[Sign[Differences[IntegerDigits[#]]], Sign][[;; , 1]] == {-1, 1, -1} &] (* Amiram Eldar, Mar 21 2024 *)
PROG
(Python)
from sympy import isprime
from itertools import combinations, islice
def agen(): # generator of terms
for d in range(4, 29):
print(d)
passed = set()
for d1 in range(2, min(d-2, 11)+1):
for c1 in combinations("9876543210", d1):
for d2 in range(1, min(d-d1-1, 10)+1):
digits2 = list(map(str, range(int(c1[-1])+1, 10)))
for c2 in combinations(digits2, d2):
digits3 = list(map(str, range(int(c2[-1])-1, -1, -1)))
for c3 in combinations(digits3, d - d1 - d2):
t = int("".join(c1 + c2 + c3))
if isprime(t):
passed.add(t)
yield from sorted(passed)
print(list(islice(agen(), 63))) # Michael S. Branicky, Mar 20 2024
CROSSREFS
KEYWORD
nonn,base,fini
AUTHOR
James S. DeArmon, Mar 20 2024
EXTENSIONS
More terms from Michael S. Branicky, Mar 20 2024
STATUS
approved