백준 1929번 소수 구하기 Node.js

찌니월드·7일 전
0

항해 99클럽 TIL

목록 보기
1/5

오늘부터 4주 동안 항해에서 진행하는 1일 1문제 코딩테스트 스터디 99클럽에 참여한다.

99클럽말고도 다른 코딩테스트 스터디(알파스터디 ㅋ)를 하고 있지만
매일 출제되는 1문제 풀기 + TIL 작성 인증만 하면 미션 보상을 주기 때문에 게임처럼 즐길 수 있을 것 같아서 신청했당 ㅎㅎ

미션 다 성공해서 보상 전부 받을거닷~!~! 움하하하

문제

M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다.

출력

한 줄에 하나씩, 증가하는 순서대로 소수를 출력한다.

예제 입력 1

3 16

예제 출력 1

3
5
7
11
13

나의 풀이

const fs = require("fs");
const [m, n] = fs.readFileSync("/dev/stdin").toString().trim().split(" ").map(Number);

const primes = Array(n + 1).fill(true);
primes[0] = primes[1] = false;

// 에라토스테네스의 체
for (let i = 2; i * i <= n; i++) {
  if (primes[i]) {
    for (let j = i * i; j <= n; j += i) {
      primes[j] = false;
    }
  }
}

for (let i = m; i <= n; i++) {
  if (primes[i]) {
    console.log(i);
  }
}
profile
Front-End Developer

0개의 댓글

관련 채용 정보