Update math.combinatorics dependencies in PE solutions

db4
Aaron Schaefer 2008-01-27 20:09:31 -05:00
parent c770e5d586
commit 5da9faa71c
2 changed files with 2 additions and 19 deletions

View File

@ -1,6 +1,6 @@
! Copyright (c) 2008 Aaron Schaefer.
! See http://factorcode.org/license.txt for BSD license.
USING: kernel math math.parser math.ranges namespaces sequences ;
USING: kernel math.combinatorics math.parser ;
IN: project-euler.024
! http://projecteuler.net/index.php?section=problems&id=24
@ -22,23 +22,6 @@ IN: project-euler.024
! SOLUTION
! --------
<PRIVATE
: (>permutation) ( seq n -- seq )
[ [ dupd >= [ 1+ ] when ] curry map ] keep add* ;
PRIVATE>
: >permutation ( factoradic -- permutation )
reverse 1 cut [ (>permutation) ] each ;
: factoradic ( k order -- factoradic )
[ [1,b] [ 2dup mod , /i ] each ] { } make reverse nip ;
: permutation ( k seq -- seq )
dup length swapd factoradic >permutation
[ [ dupd swap nth , ] each drop ] { } make ;
: euler024 ( -- answer )
999999 10 permutation 10 swap digits>integer ;

View File

@ -1,7 +1,7 @@
! Copyright (c) 2008 Aaron Schaefer.
! See http://factorcode.org/license.txt for BSD license.
USING: combinators.lib hashtables kernel math math.combinatorics math.parser
math.ranges project-euler.common project-euler.024 sequences sorting ;
math.ranges project-euler.common sequences sorting ;
IN: project-euler.032
! http://projecteuler.net/index.php?section=problems&id=32