]> gitweb.factorcode.org Git - factor.git/blobdiff - extra/project-euler/040/040.factor
factor: trim using lists
[factor.git] / extra / project-euler / 040 / 040.factor
old mode 100755 (executable)
new mode 100644 (file)
index 86fb346..acbd983
@@ -1,6 +1,6 @@
 ! Copyright (c) 2008 Aaron Schaefer.
 ! See http://factorcode.org/license.txt for BSD license.
-USING: kernel math math.parser sequences strings project-euler.common ;
+USING: kernel math math.parser sequences project-euler.common ;
 IN: project-euler.040
 
 ! http://projecteuler.net/index.php?section=problems&id=40
@@ -28,7 +28,7 @@ IN: project-euler.040
 
 : (concat-upto) ( n limit str -- str )
     2dup length > [
-        pick number>string over push-all rot 1+ -rot (concat-upto)
+        pick number>string append! [ 1 + ] 2dip (concat-upto)
     ] [
         2nip
     ] if ;
@@ -37,7 +37,7 @@ IN: project-euler.040
     SBUF" " clone 1 -rot (concat-upto) ;
 
 : nth-integer ( n str -- m )
-    [ 1- ] dip nth 1string string>number ;
+    [ 1 - ] dip nth digit> ;
 
 PRIVATE>