πŸ’‘ Level 1 | μ†Œμˆ˜ λ§Œλ“€κΈ° (JavaScript)

rimmzΒ·2022λ…„ 5μ›” 16일
0

programmers

λͺ©λ‘ 보기
7/15
post-thumbnail

πŸ“Œ 문제

  • 주어진 숫자 쀑 3개의 수λ₯Ό λ”ν–ˆμ„ λ•Œ μ†Œμˆ˜κ°€ λ˜λŠ” 경우의 개수λ₯Ό κ΅¬ν•˜λ €κ³  ν•©λ‹ˆλ‹€. μˆ«μžλ“€μ΄ λ“€μ–΄μžˆλŠ” λ°°μ—΄ numsκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, nums에 μžˆλŠ” μˆ«μžλ“€ 쀑 μ„œλ‘œ λ‹€λ₯Έ 3개λ₯Ό 골라 λ”ν–ˆμ„ λ•Œ μ†Œμˆ˜κ°€ λ˜λŠ” 경우의 개수λ₯Ό return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.

https://programmers.co.kr/learn/courses/30/lessons/12977

πŸ“ 문제 풀이

function solution(nums) {
  let answer = 0;

  // μ†Œμˆ˜ 체크
  const isPrime = (n) => {
    for (let i = 2; i <= Math.sqrt(n); i++) {
      if (n % i === 0) return false;
    }
    return true;
  };

  for (let i = 0; i < nums.length; i++) {
    for (let j = i + 1; j < nums.length; j++) {
      for (let k = j + 1; k < nums.length; k++) {
        const sum = nums[i] + nums[j] + nums[k];
        if (isPrime(sum)) answer += 1;
      }
    }
  }

  return answer;
}

πŸ’¬ 정리

  • num μ•½μˆ˜ 확인
  const isPrime = (n) => {
    for (let i = 2; i <= Math.sqrt(n); i++) {
      if (n % i === 0) return false;
    }
    return true;
  };
profile
#μ˜μš•λ„˜μΉ˜λŠ”#πŸ’»#✨#Front-end#πŸ’ͺ🏻

0개의 λŒ“κΈ€