diff --git a/extra/project-euler/001/001-tests.factor b/extra/project-euler/001/001-tests.factor index 8d2461a510..1cab275619 100644 --- a/extra/project-euler/001/001-tests.factor +++ b/extra/project-euler/001/001-tests.factor @@ -4,3 +4,4 @@ IN: project-euler.001.tests [ 233168 ] [ euler001 ] unit-test [ 233168 ] [ euler001a ] unit-test [ 233168 ] [ euler001b ] unit-test +[ 233168 ] [ euler001c ] unit-test diff --git a/extra/project-euler/001/001.factor b/extra/project-euler/001/001.factor index 1e49be9a60..c9145c9b73 100644 --- a/extra/project-euler/001/001.factor +++ b/extra/project-euler/001/001.factor @@ -1,4 +1,4 @@ -! Copyright (c) 2007 Aaron Schaefer. +! Copyright (c) 2007, 2008 Aaron Schaefer, Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: kernel math math.ranges sequences ; IN: project-euler.001 @@ -51,4 +51,11 @@ PRIVATE> ! [ euler001b ] 100 ave-time ! 0 ms run / 0 ms GC ave time - 100 trials + +: euler001c ( -- answer ) + 1000 [ { 3 5 } [ mod 0 = ] with contains? ] filter sum ; + +! [ euler001c ] 100 ave-time +! 0 ms ave run time - 0.06 SD (100 trials) + MAIN: euler001