뒤집은 소수

성석민·2022년 4월 29일
1

알고리즘

목록 보기
28/72
post-thumbnail

github 전체코드

문제

N개의 자연수가 입력되면 각 자연수를 뒤집은 후 그 뒤집은 수가 소수이면 그 소수를 출력

풀이 과정

  1. 주어진 배열을 순회한다.
  2. 각각의 요소를 뒤집은 후 isPrime 함수에 대입해서 true를 반환받으면
    2.1 해당 값을 push
const isPrime = (num) => {
  if (num <= 1) return false;
  else if (num % 2 === 0) return num === 2 ? true : false;

  for (let i = 3; i <= Math.sqrt(num); i += 2) {
    if (num % i === 0) return false;
  }

  return true;
};

const solutionA = (numberArray) => {
  let answer = [];

  for (let num of numberArray) {
    const reverseNum = parseInt(String(num).split('').reverse().join(''));

    isPrime(reverseNum) && answer.push(reverseNum);
  }

  return answer;
};

const testA = solutionA([32, 55, 62, 20, 250, 370, 200, 30, 100]);
console.log(testA);

틀린 부분이 있거나 보충해야 할 내용이 있다면 댓글이나 DM(sungstonemin)으로 알려주시면 감사하겠습니다😄

profile
기록하는 개발자

0개의 댓글