프로그래머스 | 소수 만들기_JS
1485 단어 programmersalgorithmalgorithm
난이도 : Level. 1
언어 : Javascript
출제 내역 : Summer/Winter Coding(~2018)
❓ Question
주어진 숫자 배열에서 무작위로 3개의 수를 더해 나온 값 중에서
소수가 몇개인지 알아내라.
📝 My Solution
전체 풀이 코드 👈🏻 클릭시 Github로 이동
function solution(nums) {
var answer = 0;
let sumNum = 0;
let check = false;
for (let x = 0; x<nums.length; x++) {
for (let y = x+1; y<nums.length; y++) {
for (let z = y+1; z<nums.length; z++) {
sumNum = nums[x] + nums[y] + nums[z]
우선 배열에서 중복없이 3가지 숫자를 더해야 하기 때문에
반복문을 3번 돌려서 3가지 숫자를 더한 값을 도출해줍니다.
for(let i = 2; i<sumNum; i++) {
if (sumNum%i === 0) {
check = false
break;
} else {
check = true
}
}
그 이후, 나머지가 1과 자기자신을 제외한 값을 나눠주는데,
이 때, 나머지가 0이라면 소수가 아닌게 되니 false
를 반환하고
반복문을 종료해줍니다.
모든 과정을 거치면 true
를 반환해줍니다.
if(check === true) {
answer++
}
}
}
}
return answer;
}
마지막으로 true
를 확인하고, 갯수를 나타내는 answer를 1 올려줍니다.
결과
소수를 찾는 과정에서 조금 시간이 걸렸지만
그래도 풀어내니 기분은 좋군요 ㅎㅎ
Author And Source
이 문제에 관하여(프로그래머스 | 소수 만들기_JS), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sstaar91/Algorithm-Programmers-decimal-pumrjiek저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)