# Le Monde puzzle [#840]

November 22, 2013
By

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Another number theory Le Monde mathematical puzzles:

Find 2≤n≤50 such that the sequence {1,…,n} can be permuted into a sequence such that the sum of two consecutive terms is a prime number.

Now this is a problem with an R code solution:

```library(pracma)
foundsol=TRUE
N=2
while (foundsol){

N=N+1
noseq=TRUE
uplim=10^6
t=0
while ((t
which returns the solution as
> N
[1] 12
> lastsol
[1]  6  7 12 11  8  5  2  1  4  3 10  9

and so it seems there is no solution beyond N=12…
However, reading the solution in the next edition of Le Monde, the authors claim there are solutions up to 50. I wonder why the crude search above fails so suddenly, between 12 and 13! So instead I tried a recursive program that exploits the fact that subchains are also verifying  the same property:
findord=function(ens){

if (length(ens)==2){
sol=ens
foundsol=isprime(sum(ens))}
else{
but=sample(ens,1)
nut=findord(ens[ens!=but])
foundsol=FALSE
sol=ens
if (nut\$find){
tut=nut\$ord
foundsol=max(isprime(but+tut[1]),
isprime(but+tut[length(tut)]))
sol=c(tut,but)
if (isprime(but+tut[1]))
sol=c(but,tut)
}
}
list(find=foundsol,ord=sol)
}

And I ran the R code for N=13,14,…
> stop=TRUE
> while (stop){
+   a=findord(1:N)
+   stop=!(a\$find)}

until I reached N=20 for which the R code would not return a solution. Maybe the next step would be to store solutions in N before moving to N+1. This is just getting  me too far from a mere Saturday afternoon break.
Filed under: Books, Kids, R Tagged: Le Monde, mathematical puzzle, pracma, prime numbers, R

var vglnk = { key: '949efb41171ac6ec1bf7f206d57e90b8' };

(function(d, t) {
var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;
var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);
}(document, 'script'));

Related
ShareTweet

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or  here if you don't.