Hello campers , I got stuck on this challenge , I found a solution but it is not effecient ,because it goes into too much loop
function nthPrime(n) {
// Good luck!
let counter=0;
let primes=[2];
let i=0;
let num=2;
while(i<20000){
num+=1;
for(let j=0;j<primes.length;j++){
if(/\d{1,}(?=\.)/g.test(num/primes[j])){
counter+=1;
}
}
if(counter===primes.length){
primes.push(num);
counter=0;
}
if(primes.length===n){
return primes[primes.length-1];
}
else {
counter=0;
}
i++
}
}
nthPrime(10001);
I don’t know any algorithm rather than this one , maybe because I m not good in math
the algorithm that I am using here is i is looing if num=3 num/primes[ j ] wich is 3/2
counter incremented
then if counter ===primes.length means that this number is prime
and to stop i looping if I find primes.length===n the function returns and stop everything
https://learn.freecodecamp.org/coding-interview-prep/project-euler/problem-7-10001st-prime