[프로그래머스] 소수 만들기 javascript
[2017 서머코딩] level2 소수 만들기
javascript
조건
* nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return
제한사항
- nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다.
- nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다.
입출력 예
nums | result |
---|---|
[1,2,3,4] | 1 |
[1,2,7,6,4] | 4 |
코드
function solution(nums) {
let answer = 0;
//1. 3자리 숫자 만들기
const len = nums.length;
for (let i = 0; i < len; i++)
{
for (let j = i+1; j < len; j++)
{
for (let k = j+1; k < len; k++)
{
const number = nums[i]+nums[j]+nums[k];
if (isPrime(number))
answer++;
}
}
}
//2. 소수 판별(2~number까지 하나씩 비교)
function isPrime(number)
{
if (number < 2) return true;
for (let i = 2; i < number; i++)
{
if (number % i == 0) return false;
}
return true;
}
return answer;
}
댓글
댓글 쓰기