[프로그래머스] 약수의 개수와 덧셈

Narcoker·2022년 9월 16일
0

코딩테스트

목록 보기
34/150

문제 설명

두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.

제한사항

1 ≤ left ≤ right ≤ 1,000

입출력 예

풀이

정수의 제곱근이 정수이면 약수의 개수는 홀수인 점을 활용한 풀이
ex) 25 -> 제곱근: 5, 약수 : 1,5,25

function solution(left, right) {
    let answer = 0;
    for(let i = left; i<= right; i++)
        Number.isInteger(Math.sqrt(i)) ? answer -= i : answer += i;
    return answer;
}
profile
열정, 끈기, 집념의 Frontend Developer

0개의 댓글