OFFSET
1,1
COMMENTS
A block of odd length is called palindromic if the residues read the same from left to right and from right to left. For example, for q = 3, the block of 3 prime numbers [5, 7, 11] gives the residues modulo 3 [2, 1, 2], which is a palindrome.
EXAMPLE
n a(n) prime numbers modulo n
------------------------------------------------------------------
1 2 [2] [0]
2 3 [3,5] [1,1]
3 2 [2,3,5] [2,0,2]
4 5 [5,7,11,13] [1,3,3,1]
5 347 [347,349,353,359,367] [2,4,3,4,2]|
6 113 [113,127,131,137,139,149] [5,1,5,5,5,1,5]
7 3331 [3331,3343,3347,3359,3361,3371,3373] [6,4,1,6,1,4,6]
...
MAPLE
FindLineU_fast := proc(n)
local q, L, P, R, p, i, ok;
q := n;
L := n;
P := [];
R := [];
p := 2;
while true do
P := [op(P), p];
R := [op(R), p mod q];
if nops(P) > L then
P := P[2..-1];
R := R[2..-1];
end if;
if nops(P) = L then
ok := true;
for i from 1 to n+1 do
if R[i] <> R[L-i+1] then
ok := false;
break;
end if;
end do;
if ok then
return P[1], P, R;
end if;
end if;
p := nextprime(p);
end do;
end proc:
FindLineU_fast(3);
PROG
(PARI) ispal(v) = for (i=1, #v\2, if (v[i] != v[#v-i+1], return(0))); 1;
a(n) = my(v=Vecrev(primes(n)), p=prime(n)); v = apply(x->(x%n), v); while (!ispal(v), p=nextprime(p+1); v=concat(p % n, v); v=Vec(v, n)); for(i=1, n-1, p=precprime(p-1)); p; \\ Michel Marcus, Feb 21 2026
(Python)
from sympy import prime, nextprime
def A393342(n):
p = [prime(i) for i in range(1, n+1)]
r = [q%n for q in p]
while True:
if r[:(t:=len(r)+1>>1)]==r[:-t-1:-1]: return p[0]
p = p[1:]+[m:=nextprime(p[-1])]
r = r[1:]+[m%n] # Chai Wah Wu, Mar 03 2026
CROSSREFS
KEYWORD
nonn,hard,more
AUTHOR
Michel Lagneau, Feb 12 2026
EXTENSIONS
a(16) from Sean A. Irvine, Feb 25 2026
a(17)-a(18) from Chai Wah Wu, Mar 04 2026
STATUS
approved
