【发布时间】:2012-11-23 06:16:37
【问题描述】:
我想在 Scala 中解决 this 问题。 我的代码:
def dividers(n: Int) =
(1 until n) filter (x => n%x == 0)
def sumOfDividers(n: Int) = dividers(n).sum
val abNumbers = (1 to 28123) filter (x => sumOfDividers(x) > x)
我的解决方案的下一步是制作一些序列,其中包含来自abNumbers 序列的所有可能的丰富数字。我尝试使用增强的 for 循环来做到这一点,但它会在运行时引发 Java Heap Exception。如何将所有这些总和放入 Stream 结构中?
【问题讨论】:
-
我假设
Java Heap Exception是 OutOfMemoryException。但即使给进程 2Mb 的内存来使用,它也能成功完成,不管有没有流。 -
@DenisTulskiy 确实 - 也许我们想看看 OP 的“增强的 for 循环”?