π λ¬Έμ
- λ μ μ leftμ rightκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§λλ€. leftλΆν° rightκΉμ§μ λͺ¨λ μλ€ μ€μμ, μ½μμ κ°μκ° μ§μμΈ μλ λνκ³ , μ½μμ κ°μκ° νμμΈ μλ λΊ μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
https://programmers.co.kr/learn/courses/30/lessons/77884
π λ¬Έμ νμ΄
function getDivisors(num) {
let count = 0;
for (let i = 1; i <= num; i++) {
if (num % i === 0) count++;
}
return count;
}
function solution(left, right) {
let answer = 0;
for (let i = left; i <= right; i++) {
if (getDivisors(i) % 2 === 0) {
answer += i;
} else {
answer -= i;
}
}
return answer;
}
π¬ μ 리
- numμ μ½μ κ°μ ꡬνκΈ°
function getDivisors(num) {
let count = 0;
for (let i = 1; i <= num; i++) {
if (num % i === 0) count++;
}
return count;
}
πΏ λ€λ₯Έ μ¬λμ νμ΄
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;
}
- μ κ³±κ·Όμ μ΄μ©νμ¬ μ½μμ κ°μλ₯Ό νμΈνλ λ¬Έμ νμ΄ λ°©λ²
Math.sqrt()
: μ«μμ μ κ³±κ·Όμ λ°ν
Number.isInteger()
: μ£Όμ΄μ§ κ°μ΄ μ μμΈμ§ νλ³
Number.isInteger(Math.sqrt(num))
: numμ μ κ³±κ·Όμ΄ μ μ μΌ κ²½μ° μ½μμ κ°μλ νμ μλ κ²½μ° μ½μμ κ°μλ μ§μ