Jayden1116 2022. 5. 23. 23:52
const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : './data.txt';

const input = fs
  .readFileSync(path)
  .toString()
  .split('\n')
  .map((x) => Number(x));

function solve(input) {
  for (let number of input) {
    if (number === 0) {
      return null;
    }

    let min = number;
    let max = number * 2;

    let arr = [...new Array(max + 1).keys()];

    for (let i = 2; i <= Math.sqrt(max); i++) {
      if (arr[i]) {
        for (let j = i * i; j <= max; j += i) {
          arr[j] = false;
        }
      }
    }
    arr.shift();
    arr.shift();

    console.log(arr.filter((x) => x > min).length);
  }
}

solve(input);

๋ฐฑ์ค€


์—๋ผํ† ์Šค๋„คํ…Œ์Šค์˜ ์ฒด ๊ฐœ๋…๋งŒ ์ดํ•ดํ•˜๊ณ  ๋กœ์ง์„ ์งค ์ค„ ์•Œ๋ฉด ์‰ฝ๊ฒŒ ํ’€๋ฆฌ๋Š” ๋ฌธ์ œ ๊ฐ™๋‹ค.
๊ฐœ์ธ์ ์œผ๋กœ ๋ฐฐ์—ด์„ ๋งŽ์ด ๋‹ค๋ฃจ๋ฉด์„œ ๋ฐฐ์—ด์˜ ํ•จ์ˆ˜๋“ค์„ MDN์—์„œ ์ฐพ์•„๋ณด๋ฉด์„œ ํ™œ์šฉํ•˜๋Š” ๊ฒŒ ๋ฌด์ฒ™ ์žฌ๋ฏธ์žˆ๋‹ค. :)