프로젝트 오일러의 문제 10. 나는이 논의를 보았다하지만 C.하스켈 코드를 최적화하여 2 백만 미만의 모든 소수의 합을 계산하십시오.
내가 계산하려면 다음 코드를 사용 :
print . sum . sieve $ [2..2000000] where
sieve [] = []
sieve (x:xs) = x : sieve (filter ((/= 0) . (`mod` x)) xs)
그것은 계산하는 연령이 걸립니다. 나는 그것을 계산하는 더 효율적인 방법이 있는지 궁금합니다.
또한 typo :'체 '대신'seive'가 있습니다. –
업데이트 됨. Antal에게 감사드립니다. – swcai
하위 선형 시간에이를 수행 할 수 있습니다 (https://stackoverflow.com/questions/44441627/how-to-optimize-this-haskell-code-summing-up-the-primes). –