login
Numbers such that the absolute difference of any two adjacent (decimal) digits is prime.
8

%I #25 Dec 23 2024 14:53:43

%S 0,1,2,3,4,5,6,7,8,9,13,14,16,18,20,24,25,27,29,30,31,35,36,38,41,42,

%T 46,47,49,50,52,53,57,58,61,63,64,68,69,70,72,74,75,79,81,83,85,86,92,

%U 94,96,97,130,131,135,136,138,141,142,146,147,149,161,163,164

%N Numbers such that the absolute difference of any two adjacent (decimal) digits is prime.

%C Numbers which may (and do) occur in A219250 and A219249 (union {0}).

%C This is to A219250 and A219249 what A182175 is to A182177 and A182178.

%H Michael S. Branicky, <a href="/A219248/b219248.txt">Table of n, a(n) for n = 1..10000</a> (terms 1..1000 from Harvey P. Dale)

%H E. Angelini, <a href="https://web.archive.org/web/*/http://list.seqfan.eu/oldermail/seqfan/2013-April/011035.html">Any digit-pair in S sums to a prime</a>, SeqFan list, Apr 11 2013

%t Select[Range[0,200],And@@PrimeQ[Abs[Differences[IntegerDigits[#]]]]&] (* _Harvey P. Dale_, Jun 06 2014 *)

%o (PARI) is_A219248(n)={!for(i=2,#n=digits(n),isprime(abs(n[i-1]-n[i]))||return)}

%o (Python)

%o def ok(n):

%o d = list(map(int, str(n)))

%o return all(abs(d[i]-d[i-1]) in {2,3,5,7} for i in range(1, len(d)))

%o print([k for k in range(164) if ok(k)]) # _Michael S. Branicky_, Sep 11 2024

%o (Python)

%o from itertools import count, islice

%o def A219248gen(seed=None): # generator of terms

%o nxt = {None:"123456789", "0":"2357", "1":"3468", "2":"04579",

%o "3":"01568", "4":"12679", "5":"02378", "6":"13489",

%o "7":"02459", "8":"1356", "9":"2467"}

%o def bgen(d, seed=None):

%o if d == 0: yield tuple(); return

%o yield from ((i,)+t for i in nxt[seed] for t in bgen(d-1, seed=i))

%o yield 0

%o for d in count(1):

%o yield from (int("".join(t)) for t in bgen(d, seed=seed))

%o print(list(islice(A219248gen(), 65))) # _Michael S. Branicky_, Sep 11 2024

%K nonn,base

%O 1,3

%A _M. F. Hasler_, Apr 12 2013