[ 백준 ] 1978 소수 찾기 [ js ]

Ann·2022년 6월 14일
0

Algorithm

목록 보기
10/53

1978 소수 찾기

문제

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

출력

주어진 수들 중 소수의 개수를 출력한다.

풀이

let input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
// let input = ['4', '1 3 5 7'];
let N = parseInt(input[0]);
let arr = input[1].split(' ').map(n => parseInt(n));
let answer = 0;

function isPrime(num){
  if(num===1) return false;    
  for(let i=2; i<parseInt(num); i++){
      if(num%i===0) return false;
  }    
  return true;
};

for(let i=0; i<N; i++){
    if(isPrime(arr[i])) answer++;
};
console.log(answer);

소수판별 function에서 범위를 parseInt(Math.sqrt(num)로 주는게 보편적이지만 주어진 입력값이 작아서 parseInt(num)으로 설정했다

profile
안녕하세요

0개의 댓글