[프로그래머스] 소수 만들기

쿼카쿼카·2022년 9월 21일
0

알고리즘

목록 보기
27/67

문제

코드

function isPrime(n) {
    for(let i=2; i<=Math.sqrt(n); i++) {
        if(n%i===0) return false;
    }
    return true;
}

function solution(nums) {
    const arr = [];
    for(let i=0; i<nums.length-2; i++) {
        for(let j=i+1; j<nums.length-1; j++) {
            for(let k=j+1; k<nums.length; k++) {
                if(isPrime(nums[i]+nums[j]+nums[k])) arr.push(nums[i]+nums[j]+nums[k]);
            }
        }
    }
    return arr.length;
}

세 수의 덧셈은 삼중 for문 이용

  • 다른 방법이 있을 줄 알았지만 삼중for문만이 답이었다...시간 오래걸릴 것 같아서 무서웠는데 다행히 통과!

Set.size

  • 처음에 Array가 아닌 Set을 이용하여 했다.(중복 제거해야하는 줄 앎)
  • Array.length처럼 Set.size를 하면 길이가 나온다.
profile
쿼카에요

0개의 댓글