We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 19b4ced commit e6f1a47Copy full SHA for e6f1a47
1 file changed
maths/aliquot_sum.ts
@@ -17,10 +17,17 @@ export const aliquotSum = (num: number): number => {
17
if (num < 0) throw new TypeError('Input cannot be negative')
18
if (!Number.isInteger(num)) throw new TypeError('Input cannot be a decimal')
19
20
- let sum = 0
+ if (num <= 1) return 0
21
22
- for (let i = 1; i <= num / 2; i++) {
23
- if (num % i === 0) sum += i
+ let sum = 1
+
24
+ for (let divisor = 2; divisor <= num / divisor; divisor++) {
25
+ if (num % divisor === 0) {
26
+ sum += divisor
27
28
+ const pairedDivisor = num / divisor
29
+ if (pairedDivisor !== divisor) sum += pairedDivisor
30
+ }
31
}
32
33
return sum
0 commit comments