OFFSET
1,1
LINKS
Michael S. Branicky, Table of n, a(n) for n = 1..10000
MATHEMATICA
Select[Prime@Range@10000, (n=#; s={EvenQ, OddQ}; t=Take[IntegerDigits@n, {#}]&/@Select[Range@i, #]&/@If[EvenQ[i=IntegerLength@n], s, Reverse@s]; Union@Flatten@First@t=={7}&&FreeQ[Flatten@Last@t, 7])&] (* Giorgos Kalogeropoulos, Oct 22 2021 *)
PROG
(Magma) f7:=func<n|forall{i:i in [1..#Intseq(n) by 2]| Intseq(n)[i] eq 7}>; fc:=func<n| forall{i:i in [2..#Intseq(n) by 2]| Intseq(n)[i] ne 7}>; [p:p in PrimesUpTo(80000)|f7(p) and fc(p)]; // Marius A. Burtea, Oct 22 2021
(Python)
from sympy import primerange as primes
def ok(p):
s = str(p)
if not all(s[i] == '7' for i in range(-1, -len(s)-1, -2)): return False
return all(s[i] != '7' for i in range(-2, -len(s)-1, -2))
print(list(filter(ok, primes(1, 75798)))) # Michael S. Branicky, Oct 22 2021
(Python) # faster version for generating large initial segments of sequence
from sympy import isprime
from itertools import product
def eo7(maxdigits): # generator for every other digit is 7, no other 7's
yield 7
for d in range(2, maxdigits+1):
if d%2 == 0:
for f in "12345689":
f7 = f + "7"
for p in product("012345689", repeat=(d-1)//2):
yield int(f7 + "".join(p[i]+"7" for i in range(len(p))))
else:
for p in product("012345689", repeat=(d-1)//2):
yield int("7" + "".join(p[i]+"7" for i in range(len(p))))
print(list(filter(isprime, eo7(5)))) # Michael S. Branicky, Oct 22 2021
CROSSREFS
KEYWORD
nonn,base
AUTHOR
Lars Blomberg, Oct 22 2021
STATUS
approved