mirror of
https://github.com/voltrevo/ValueScript.git
synced 2026-01-13 15:38:06 -05:00
25 lines
463 B
TypeScript
25 lines
463 B
TypeScript
import plus from "./helpers/plus.ts";
|
|
import { properFactorSum } from "./helpers/properFactorSum.ts";
|
|
|
|
export default function main() {
|
|
let amicableNumbers = [];
|
|
|
|
for (let i = 2; i < 10_000; i++) {
|
|
if (isAmicable(i)) {
|
|
amicableNumbers.push(i);
|
|
}
|
|
}
|
|
|
|
return amicableNumbers.reduce(plus);
|
|
}
|
|
|
|
function isAmicable(n: number) {
|
|
const fSum = properFactorSum(n);
|
|
|
|
if (fSum === n) {
|
|
return false;
|
|
}
|
|
|
|
return properFactorSum(fSum) === n;
|
|
}
|