728x90
약수의 개수와 덧셈
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한 사항 : 1 ≤ left ≤ right ≤ 1,000
입출력 예
left | right | result |
---|---|---|
13 | 17 | 43 |
24 | 27 | 52 |
약수의 개수와 덧셈
function solution(left, right) {
var answer = 0;
let count = 0;
for(let i = left; i <= right; i++) { // left 와 right 의 사이
count = 0; // 초기화
for(let j = 1; j <= i; j++){
if(i % j == 0) count++; // 갯수
}
if(count % 2) answer -= i; // 약수의갯수가 짝수면 answer에 i를 더합니다. 그게 아니라면 answer에 i를 뺌니다.
else answer += i;
}
return answer;
}
총평 : 약수를 구하고 조건문으로 하면 쉽게 풀리는것 같다
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/77884
728x90
반응형
'JavaScript > Algorithm' 카테고리의 다른 글
없는 숫자 더하기 (1) | 2022.07.30 |
---|---|
음양더하기 (2) | 2022.07.29 |
완주하지 못한 선수 (2) | 2022.07.28 |
체육복 (4) | 2022.07.27 |
순열(permutation) (2) | 2022.07.25 |
댓글