A089695 Numbers m such that placing as many possible '+' signs anywhere in between the digits yields a prime in every case. Let abcd... be the digits of m; then abcd, a + bcd, ab + cd, abc + d, a + b + cd, a + bc + d, ab + c + d, a + b + c + d, ... are all prime.
2, 3, 5, 7, 11, 23, 29, 41, 43, 47, 61, 67, 83, 89, 101, 227, 229, 281, 401, 443, 449, 467, 601, 607, 647, 661, 683, 809, 821, 863, 881, 4001, 4463, 4643, 6007, 6067, 6803, 8009
Offset: 1
Examples
863 is a member 863, 8 + 63, 86 + 3, 8 + 6 + 3 are all prime.
Crossrefs
Cf. A089696.
Programs
-
Maple
with(combinat): ds:=proc(s) local j: RETURN(add(s[j]*10^(j-1),j=1..nops(s))):end: for d from 1 to 6 do sch:=[seq([1,op(i),d+1],i=choose([seq(j,j=2..d)]))]: for n from 10^(d-1) to 10^d-1 do sn:=convert(n,base,10): fl:=0: for s in sch do m:=add(j,j=[seq(ds(sn[s[i]..s[i+1]-1]),i=1..nops(s)-1)]): if not isprime(m) then fl:=1: break fi od: if fl=0 then printf("%d, ",n) fi od od: # C. Ronaldo # second Maple program: b:= proc(s) option remember; (n-> {s, seq(seq(seq(""||x||"+"||y, y=b(s[i+1..n])), x=b(s[1..i])), i=1..n-1)})(length(s)) end: q:= n-> andmap(isprime, map(parse, b(""||n))): select(q, [$1..10000])[]; # Alois P. Heinz, Oct 29 2021
-
Mathematica
Select[Prime@Range@1010,And@@PrimeQ[n=#;Total/@(FromDigits/@#&/@Union[DeleteCases[SplitBy[#,#==-1&],{-1}]&/@(Insert[IntegerDigits@n,-1,#]&/@(List/@#&/@Rest@Subsets[Range@IntegerLength@n]))])]&] (* Giorgos Kalogeropoulos, Oct 29 2021 *)
Extensions
Corrected and extended by C. Ronaldo (aga_new_ac(AT)hotmail.com), Dec 25 2004
Comments