Fix path generation for Project Euler problem files
parent
a2bcdaf696
commit
75c126fef0
|
@ -27,18 +27,9 @@ IN: project-euler.022
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
: (source-022) ( -- path )
|
|
||||||
[
|
|
||||||
"project-euler.022" vocab-root ?resource-path %
|
|
||||||
os "windows" = [
|
|
||||||
"\\project-euler\\022\\names.txt" %
|
|
||||||
] [
|
|
||||||
"/project-euler/022/names.txt" %
|
|
||||||
] if
|
|
||||||
] "" make ;
|
|
||||||
|
|
||||||
: source-022 ( -- seq )
|
: source-022 ( -- seq )
|
||||||
(source-022) file-contents [ quotable? ] subset "," split ;
|
"extra/project-euler/022/names.txt" resource-path
|
||||||
|
file-contents [ quotable? ] subset "," split ;
|
||||||
|
|
||||||
: alpha-value ( str -- n )
|
: alpha-value ( str -- n )
|
||||||
string>digits [ 9 - ] sigma ;
|
string>digits [ 9 - ] sigma ;
|
||||||
|
|
|
@ -37,14 +37,14 @@ IN: project-euler.067
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
: pyramid ( -- seq )
|
: source-067 ( -- seq )
|
||||||
"resource:extra/project-euler/067/triangle.txt" ?resource-path
|
"extra/project-euler/067/triangle.txt" resource-path
|
||||||
<file-reader> lines [ " " split [ string>number ] map ] map ;
|
<file-reader> lines [ " " split [ string>number ] map ] map ;
|
||||||
|
|
||||||
PRIVATE>
|
PRIVATE>
|
||||||
|
|
||||||
: euler067 ( -- answer )
|
: euler067 ( -- answer )
|
||||||
pyramid propagate-all first first ;
|
source-067 propagate-all first first ;
|
||||||
|
|
||||||
! [ euler067 ] 100 ave-time
|
! [ euler067 ] 100 ave-time
|
||||||
! 18 ms run / 0 ms GC time
|
! 18 ms run / 0 ms GC time
|
||||||
|
@ -53,30 +53,13 @@ PRIVATE>
|
||||||
! ALTERNATE SOLUTIONS
|
! ALTERNATE SOLUTIONS
|
||||||
! -------------------
|
! -------------------
|
||||||
|
|
||||||
<PRIVATE
|
|
||||||
|
|
||||||
: (source-067a) ( -- path )
|
|
||||||
[
|
|
||||||
"project-euler.067" vocab-root ?resource-path %
|
|
||||||
os "windows" = [
|
|
||||||
"\\project-euler\\067\\triangle.txt" %
|
|
||||||
] [
|
|
||||||
"/project-euler/067/triangle.txt" %
|
|
||||||
] if
|
|
||||||
] "" make ;
|
|
||||||
|
|
||||||
: source-067a ( -- triangle )
|
|
||||||
(source-067a) <file-reader> lines [ " " split [ string>number ] map ] map ;
|
|
||||||
|
|
||||||
PRIVATE>
|
|
||||||
|
|
||||||
: euler067a ( -- answer )
|
: euler067a ( -- answer )
|
||||||
source-067a max-path ;
|
source-067 max-path ;
|
||||||
|
|
||||||
! [ euler067a ] 100 ave-time
|
! [ euler067a ] 100 ave-time
|
||||||
! 15 ms run / 0 ms GC ave time - 100 trials
|
! 15 ms run / 0 ms GC ave time - 100 trials
|
||||||
|
|
||||||
! source-067a [ max-path ] curry 100 ave-time
|
! source-067 [ max-path ] curry 100 ave-time
|
||||||
! 3 ms run / 0 ms GC ave time - 100 trials
|
! 3 ms run / 0 ms GC ave time - 100 trials
|
||||||
|
|
||||||
MAIN: euler067a
|
MAIN: euler067a
|
||||||
|
|
Loading…
Reference in New Issue