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)