fork download
  1. (defun primes-to (n)
  2. ;;It's backwards
  3. (let ((candidates (loop for i from 2 to n collect i)) (primes nil) (test nil))
  4. (loop while candidates do
  5. (setf test (pop candidates))
  6. (unless (zerop test)
  7. (push test primes)
  8. (setf candidates (remove-if #'(lambda (x) (zerop (rem x test))) candidates))
  9. (when (> test (sqrt n))
  10. (setf primes (append canditates primes)) (return))))
  11. primes))
  12.  
  13. (apply #'+ (primes-to 2000000))
Time limit exceeded #stdin #stdout 15s 37952KB
stdin
Standard input is empty
stdout
Standard output is empty