알고리즘

[BOJ]4948 - 베르트랑 공준(JS)

로돌씨 2024. 7. 25. 16:17

 

풀이

let fs = require("fs");
let input = fs.readFileSync('예제.txt').toString().trim().split("\n").map(Number);
var answer = [];
// 소수인지 검사하는 펑션 => 자주쓰이니 외워둘것
function isPrime(n){
    //만약 n 이 2보다 작다면 소수가 아님
    if(n<2){
        return false;
    }
    //2부터 시작해서 받아온수의 제곱근만큼 반복함
    for(let i = 2; i <= Math.sqrt(n); i++){
        //만약 n이 i로 나눠지면 그것또한 소수가 아님
        if(n%i == 0) return false;
    }
    //모든 조건을 통과했다면 그것은 소수인것임
    return true;
}
for(let x of input){
    let arr = [];
    let a = x
    let b = x*2
    for(let i = a+1 ; i <= b; i++){
        arr.push(i)
    }
    answer.push(arr.filter(a=> isPrime(a)).length)
}
answer.pop();
console.log(answer.join("\n"))

 

'알고리즘' 카테고리의 다른 글

[BOJ]28279 - 덱2(JS)  (0) 2024.08.13
[BOJ]28278 - 스택2(JS)  (0) 2024.07.30
[BOJ]4134 - 다음소수 (JS)  (1) 2024.07.23
[BOJ]1934 - 최소공배수(JS)  (0) 2024.07.19
[BOJ]10816 - 숫자 카드2 (JS)  (0) 2024.07.18