[programmers] 약수의 개수와 덧셈

혜원·2024년 4월 10일
0

Programmers

목록 보기
21/22
post-thumbnail

문제설명

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


제한사항

  • 1 ≤ leftright ≤ 1,000

입출력 예

leftrightresult
131743
242752

문제풀이

i를 left로 두고, i가 j로 나누어 떨어진다면 count가 올라가도록 코드를 짰다. 이 count는 짝수라면 answer에 i가 더해지고 아니라면 i가 빼진다.


소스코드

function solution(left, right) {
    var answer = 0;
    for (var i = left; i <= right; i++) {
        let count = 0;
        for (var j = 1; j <= i; j++) {
            if (i % j == 0) {
                count++;
            }
        }
        if (count % 2 == 0)
            answer += i;
        else 
            answer -= i;
    }
    return answer;
}

풀이결과

0개의 댓글