프로그래머스 Lv.1 소수만들기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | function isPrime(x) { if(x === 1) { return false; } else { for(let i = 2; i < x; i++) { if(x % i === 0) { return false; } } return true; } } function solution(nums) { let result = 0; 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++) { let sum_n = nums[i] + nums[j] + nums[k]; if(isPrime(sum_n)) { result++; } } } } return result; } | cs |
isPrime
은 소수이면 true, 소수가 아니라면 false가 return되는 함수이다.반복문을 3개로 겹쳐 사용해서 i는 0부터
nums
길이의 -2만큼, j는 i+1부터nums
길이의 -1만큼, k는 j+1부터nums
길이만큼 반복한다.반복문 내부에 변수
sum_n
을 선언해서nums[i]
,nums[j]
,nums[k]
를 더한 값을 할당해준다.
sum_n
이isPrime
함수에서 소수로 판단이 된다면result
에 1을 더해준다.