薬水の和
4810 ワード
問題の説明
整数nを受け入れ、nのすべての約数加算値を返す関数は、解を完了してください.
せいげんじょうけん
n
は0または3000以下の整数です.I/O例
nreturn122856
I/O例説明
I/O例#1
12の約数は1,2,3,4,6,12である.合わせて28です.
I/O例#2
5の約数は1,5です.これらを合わせると6です.
私の答え
function solution(n) {
let result = []
for(let i = 0; i <= Math.floor(Math.sqrt(n)); i++){
if(n % i === 0){
result.push(i)
if(i * i < n) {
let j = n / i
result.push(j)
}
}
}
return result.reduce((acc, cur) => {
return acc + cur
}, 0)
}
他人を解く
function solution(num) {
let sum = 0;
for (let i = 1; i <= num; i++) {
if (num % i === 0) sum += i
}
return sum
}
アルゴリズムで似たような解答をしたのを覚えているので、それを適用してみましたが、考えすぎたと思います.Reference
この問題について(薬水の和), 我々は、より多くの情報をここで見つけました https://velog.io/@zzok3312/약수의-합テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol