// Groovy: 引入记忆

// Groovy语言记忆一个函数的方法是:先将要记忆的函数定义成闭包,

// 然后对该闭包执行memoize()方法来获得一个新函数;以后我们调用

// 这个新函数的时候,其结果就会被缓存起来

class ClassifierMemoizedSum {

def static isFactor(number, potential) {

number % potential == 0;

}

def static factorOf(number) {

(1..number).findAll{i -> isFactor(number, i)}

}

def ......