Skip to content

Instantly share code, notes, and snippets.

@dfeng
Created February 8, 2014 03:03
Show Gist options
  • Save dfeng/8876024 to your computer and use it in GitHub Desktop.
Save dfeng/8876024 to your computer and use it in GitHub Desktop.
Dana's 60
N <- 100000000
isprime <- rep(1,N)
for (i in 2:(floor(sqrt(N)))) {
if (isprime[i]==1) {
for (k in i:(floor(N/i))) {
isprime[i*k] <- 0
}
}
print(i)
}
len <- 1230
sel <- which(isprime == 1)
sel <- sel[1:len]
cont <- function(k1,k2) {
p1 <- as.character(sel[k1]); p2 <- as.character(sel[k2]);
c1 <- as.numeric(paste(p1,p2,sep=''))
c2 <- as.numeric(paste(p2,p1,sep=''))
if ((isprime[c1]==1) & (isprime[c2]==1)) {
return(TRUE)
} else {
return(FALSE)
}
}
len <- length(sel)
for (i1 in 2:(len-4)) {
for (i2 in (i1+1):(len-3)) {
if (cont(i1,i2)) {
for (i3 in (i2+1):(len-2)) {
if (cont(i1,i3) & cont(i2,i3)) {
for (i4 in (i3+1):(len-1)) {
if (cont(i1,i4) & cont(i2,i4) & cont(i3,i4)) {
for (i5 in (i4+1):(len)) {
if (cont(i1,i5) & cont(i2,i5) & cont(i3,i5) & cont(i4,i5)) {
cat(i1,i2,i3,i4,i5)
print(sel[i1]+sel[i2]+sel[i3]+sel[i4]+sel[i5])
stop
}
}
}
}
}
}
}
}
print(i1)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment