프로그래머스 약수의 개수와 덧셈 자바스크립트

버건디·2023년 4월 20일
0

프로그래머스

목록 보기
39/66

문제 링크

- 내 풀이

function solution(left, right) {
  var answer = 0;

  for (let i = left; i <= right; i++) {
    let measureCount = [];

    for (let j = 1; j <= i; j++) {
      if (i % j === 0) {
        measureCount.push(j);
      }
    }

    if (measureCount.length % 2 === 0) {
      answer += i;
    } else {
      answer -= i;
    }
  }

  return answer;
}

- 다른 사람 풀이

function solution(left, right) {
    var answer = 0;
    for (let i = left; i <= right; i++) {
        if (Number.isInteger(Math.sqrt(i))) {
            answer -= i;
        } else {
            answer += i;
        }
    }
    return answer;
}

제곱근이 정수라면 약수의 갯수는 홀수라는 점을 이용한 풀이.

profile
https://brgndy.me/ 로 옮기는 중입니다 :)

0개의 댓글

관련 채용 정보