24 lines
517 B
Plaintext
24 lines
517 B
Plaintext
{S.replace \s by space in
|
|
{S.map {lambda {:i} {if {js_perfect :i} then :i else}}
|
|
{S.serie 2 10000}}}
|
|
-> 6 28 496 8128 // 80ms
|
|
|
|
{script
|
|
LAMBDATALK.DICT["js_perfect"] = function() {
|
|
function js_perfect(n) {
|
|
var sum = 1, i, sqrt=Math.floor(Math.sqrt(n));
|
|
for (i = sqrt-1; i>1; i--) {
|
|
if (n % i == 0)
|
|
sum += i + n/i;
|
|
}
|
|
if(n % sqrt == 0)
|
|
sum += sqrt + (sqrt*sqrt == n ? 0 : n/sqrt);
|
|
return sum === n;
|
|
}
|
|
|
|
var args = arguments[0].trim();
|
|
return (js_perfect( Number(args) )) ? "true" : "false"
|
|
};
|
|
|
|
}
|