パーフェクト番号。質問の意味は、正の整数Nを与えることであり、この数は完全数であるかどうかを尋ねられました。NはNとして定義される完全数はすべてゼロより大きいと除数が追加されてもよいです。例
Input: 28 Output: True Explanation: 28 = 1 + 2 + 4 + 7 + 14
それは除数を含むので、私たちはより大きいのsqrt(N)の範囲を横断する必要はありません。
1 / * * 2 * @param {数} NUM 3 * @return {ブール} 4 * / 5 のvar checkPerfectNumber = 関数(NUM){ 6 // コーナーケース 7 場合(NUM === 1 ){ 8 リターン 偽。 9 } 10 11 // 通常のケース 12件 のlet RES = 1 。 13 のために(LET I = 2、iは<= Math.sqrt(NUM); iは++ ){ 14 であれば(NUM%のI === 0 ){ 15 A + = I + Math.floor(彼か/ L)。 16 } 17 } 18の リターンビジネス=== NUM。 19 }。