Skip to content

Commit 4877130

Browse files
authored
Create 2523-closest-prime-numbers-in-range.js
1 parent d5baec9 commit 4877130

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed
+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
/**
2+
* @param {number} left
3+
* @param {number} right
4+
* @return {number[]}
5+
*/
6+
var closestPrimes = function(left, right) {
7+
let primeArr = [];
8+
let res = [-1, -1];
9+
let minDiff = Infinity;
10+
11+
for(let i=left; i<=right; i++){
12+
if(isPrime(i)) primeArr.push(i)
13+
}
14+
15+
for(let i=1; i<primeArr.length; i++){
16+
let diff = primeArr[i]-primeArr[i-1];
17+
if(diff<minDiff){
18+
res = [primeArr[i-1], primeArr[i]]
19+
minDiff = diff;
20+
}
21+
}
22+
return res
23+
24+
};
25+
26+
function isPrime(n) {
27+
if (n === 1) return false;
28+
if (n % 2 === 0) return n === 2;
29+
let max = Math.floor(Math.sqrt(n)) ;
30+
for(let i = 3; i <= max; i += 2) {
31+
if (n % i === 0) return false;
32+
}
33+
return true;
34+
}

0 commit comments

Comments
 (0)