• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

에라토스테네스의 체 를 사용해서 풀었는데 문제되는 부분이 있을까요?

22.01.26 11:41 작성 조회수 131

1

function psearch(n) {
  let p = 1;
  while (p * p <= n) {
    p += 1;
  }
  return p;
}

function solution(num) {
  let answer = [];
  for (let i = 0; i < num.length; i++) {
    let now = parseInt(num[i].toString().split("").reverse().join(""));
    if (now === 2) {
      answer.push(now);
    } else if (now === 1) {
      continue;
    } else {
      let p = psearch(now);
      let val = 0;
      for (let j = 2; j <= p; j++) {
        if (now % j === 0) {
          val += 1;
        }
      }
      if (val === 0) {
        answer.push(now);
      }
    }
  }
  return answer;
}

let arr = [32, 55, 62, 20, 250, 370, 200, 30, 100, 5, 7, 6];
console.log(solution(arr));

답변 1

답변을 작성해보세요.

0

안녕하세요^^

잘 하신 코드입니다.