-
[프로그래머스/JavaScript] 소수 만들기 (Level 1)코딩테스트/기본 2021. 5. 26. 21:56
https://programmers.co.kr/learn/courses/30/lessons/12977
1. 문제 설명
주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요.
제한사항
- nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다.
- nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다.
2. 소수 판별
- 3중 반복문을 돌려 그 합계가 소수인지 판단
- 소수 판별하는 코드가 중요
- 제곱근보다 작은 수에서 나눠지는 수가 없을 경우 제곱근보다 큰 수에서도 나눠지는 수가 없기 때문에 소수로 판단
function isPrime(num) { let result = false; if(num === 2) return true; for(let i = 2; i <= Math.floor(Math.sqrt(num)); i++) { if(num % i === 0) { result = false; break; } else { result = true; } } return result; }
'코딩테스트 > 기본' 카테고리의 다른 글
[프로그래머스/JavaScript] 내적 (Level 1) (0) 2021.06.13 [프로그래머스/JavaScript] 스킬트리 (Level 2) (0) 2021.06.12 [프로그래머스/JavaScript] 점프와 순간 이동 (Level 2) (0) 2021.06.12 [프로그래머스/JavaScript] 예산 (Level 1) (0) 2021.05.26 [프로그래머스/JavaScript] 폰켓몬 (Level 1) (0) 2021.05.24