개발/[JavaScript] 프로그래머스
[JavaScript] 프로그래머스 - Level 1: 약수의 개수와 덧셈
hr0513
2024. 11. 9. 14:00
728x90
반응형
문제 설명
두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ left ≤ right ≤ 1,000
입출력 예
left | right | result |
13 | 17 | 43 |
24 | 27 | 52 |
solution.js
function solution(left, right) {
return Array.from({ length: right - left + 1 }, (_, i) => left + i)
.reduce((acc, num) => acc + (Number.isInteger(Math.sqrt(num)) ? -num : num), 0);
}
※ 제곱근이 정수면 약수의 개수가 홀수입니다.
728x90
반응형