0
我正在使用ruby,这个想法是创建一个方法,添加一个给定值以下的所有素数。我现在的工作,但当我使用更大的数字,如1000万,它需要永远运行。我在想,如果有办法,我可以优化下面的代码,使之即使有这样大的数字,跑得更快如何优化下面的方法
def self.sum_to(limit)
primes = (2..limit).select do |n|
(2..Math.sqrt(n)).none? do |i|
(n % i).zero?
end
end
sum = primes.reduce(:+)
end
puts Primes.sum_to(10000000)