유물/└ 백준
<백준(node.js)> 1978번: 소수 찾기
디벅잉
2022. 2. 22. 20:35
728x90
🤖
문제
https://www.acmicpc.net/problem/1978
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
풀이
const filePath = process.platform === "linux" ? "/dev/stdin" : "../input.txt";
const INPUT_ARR = require("fs").readFileSync(filePath).toString().trim().split("\n");
const Q_ARR = INPUT_ARR[1].split(" ").map(Number);
let countPrime = 0;
function isPrime(num) {
if (num === 1) {
return false;
}
if (num === 2) {
return true;
}
for (let i = 2; i <= Math.floor(Math.sqrt(num)); i++) {
if (num % i === 0) {
return false;
}
}
return true;
}
Q_ARR.forEach((num) => {
if (isPrime(num)) countPrime += 1;
});
console.log(countPrime);
1. (line 7~20) 주어진 수의 제곱근까지 나누어 떨어지는 수가 없으면 소수라는 특징을 이용해서 소수를 판별합니다.
2. (line 22~24) 주어진 수의 배열을 forEach 메서드로 돌며 소수를 count 합니다.
📌
https://ant-programmer.tistory.com/2
[JavaScript] 소수 판별식
소수(Prime Number)를 판별하는데 여러가지 방법이 있는데 오늘은 내가 알고리즘 공부를 하면서 직접 찾아본 세 가지 방법을 정리하려한다. 1) 직접 나누어서 계산하기 2) N/2 까지만 나누어서 계산하
ant-programmer.tistory.com
728x90