Tuenti Challenge 2001 #3
What is the sum of all emirps up to X?
by Luis Martin
JavaScript
function getEmirps(max) {
var sieve = [], i, j, primes = [];
for (i = 2; i <= max; ++i) {
if (!sieve[i]) {
primes.push(i);
for (j = i << 1; j <= max; j += i) {
sieve[j] = true;
}
}
}
return primes.filter(num => (num.length!=1) && !isPalindrome(num) && reverseIsPrime(num));
}
function isPalindrome(num){
return num.toString().split("").reverse().join("") == num+""
}
function reverseIsPrime(num) {
num = Number(num.toString().split("").reverse().join(""))
for(var i = 2; i < num; i++)
if(num % i === 0) return false;
return num !== 1;
}
let input = `100
200`;
let lines = input.split("\n")
lines.forEach((line) => {
console.log(getEmirps(Number(line)).reduce((tot,el)=>tot+=el,0))
});