
const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : 'Wiki\\input.txt';
const [_, inputs] = fs.readFileSync(path).toString().trim().split('\n');
let sosuCnt = 0;
const isSoSu = (n) => {
if (n === 1) return false;
for (let i = 2; i < n; i++) {
if (n % i === 0) return false;
}
return true;
};
for (const input of inputs.split(' ')) {
const n = Number(input);
if (isSoSu(n)) sosuCnt += 1;
}
console.log(sosuCnt);
⏰ 소요한 시간 : 9분
소수란 1과 자기 자신만을 약수로 가지는 수를 의미한다.
참고로 1은 소수가 될 수 없음
그래서 문제에서 주어진 입력값을 순회하면서 소수인지 아닌지 판별해 주기 위한 함수를 만들어 줬다.
이때 소수판별 함수 내부에서 1일때 소수가 아님을 명시해주면 됨!
에라토스테네스의 지건이였나 람각이였나 아무튼 그걸로 푸시는게 좋아보이네요...
그리고 isSosu는 좀 열받네요