login
Number of primes (excluding n) that may be generated by replacing any decimal digit of n with a digit from 0 to 9.
5

%I #32 Sep 20 2016 03:04:57

%S 4,4,3,3,4,3,4,3,4,4,4,7,5,9,4,5,4,8,4,7,2,7,3,7,2,3,2,8,2,5,2,5,3,9,

%T 2,3,2,6,2,7,3,6,4,8,3,4,3,7,3,8,2,7,3,7,2,3,2,8,2,5,2,5,3,9,2,3,2,6,

%U 2,7,3,6,4,8,3,4,3,9,3,6,2,7,3,7,2,3,2,8,2,5,1,6,2,8,1,2,1,5,1,6,4,10,5,9,4

%N Number of primes (excluding n) that may be generated by replacing any decimal digit of n with a digit from 0 to 9.

%C I expect that the average value of a(n) is 45/log 100 if n is coprime to 10 and 0 otherwise. - _Charles R Greathouse IV_, Jan 14 2013

%C First occurrence of k = 0..27: 200, 90, 20, 2, 1, 12, 37, 11, 17, 13, 101, 109, 107, 177, 357, 1001, 1011, 10759, 13299, 11487, 42189, 113183, 984417, 344253, 1851759, 4787769, 16121457, 15848679. - _Robert G. Wilson v_, Dec 19 2015

%H Michel Lagneau, <a href="/A209252/b209252.txt">Table of n, a(n) for n = 0..10000</a>

%H Terence Tao, <a href="http://arxiv.org/abs/0802.3361">A remark on primality testing and decimal expansions</a>, Journal of the Australian Mathematical Society 91:3 (2011), pp. 405-413.

%e a(0) = 4 because by replacing the digit 0, we obtain the 4 primes 2, 3, 5 and 7;

%e a(11) = 7 because by replacing the 1st digit of *1, we obtain the primes 31, 41, 61, 71, and by replacing the 2nd digit of 1* we obtain the primes 13, 17, 19, hence a(11) = 7.

%e a(13) = 8 because 03, 11, 17, 19, 23, 43, 53, 73 and 83 are all primes.

%e a(204) = 0 because it is impossible to find a prime number if we replace the digits 2, 0 or 4.

%p A209252 := proc(n)

%p local a,dgs,d,r,pd,p ;

%p a := 0 ;

%p dgs := convert(n,base,10) ;

%p for d from 1 to nops(dgs) do

%p for r from 0 to 9 do

%p pd := subsop(d=r,dgs) ;

%p p := add(op(i,pd)*10^(i-1),i=1..nops(pd)) ;

%p if isprime(p) and p <> n then

%p a := a+1 ;

%p end if;

%p end do:

%p end do:

%p a ;

%p end proc: # _R. J. Mathar_, Jan 18 2013

%t f[n_] := Block[{c = k = 0, d, p, lmt = 1 + Floor@ Log10@ n}, While[k < lmt, d = 0; While[d < 10, p = Quotient[n, 10^(k+1)]*10^(k+1) + d*10^k + Mod[n, 10^k]; If[p != n && PrimeQ@ p, c++]; d++]; k++]; c]; f[0] = 4; Array[f, 105, 0] (* _Robert G. Wilson v_, Dec 19 2015 *)

%o (Python)

%o from sympy import isprime

%o def A209252(n):

%o return len([1 for i in range(len(str(n))) for d in '0123456789' if d != str(n)[i] and isprime(int(str(n)[:i]+d+str(n)[i+1:]))]) # _Chai Wah Wu_, Sep 19 2016

%Y Cf. A000040.

%K nonn,base

%O 0,1

%A _Michel Lagneau_, Jan 14 2013