Update math.combinatorics dependencies in PE solutions
parent
c770e5d586
commit
5da9faa71c
|
@ -1,6 +1,6 @@
|
||||||
! Copyright (c) 2008 Aaron Schaefer.
|
! Copyright (c) 2008 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! 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
|
IN: project-euler.024
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=24
|
! http://projecteuler.net/index.php?section=problems&id=24
|
||||||
|
@ -22,23 +22,6 @@ IN: project-euler.024
|
||||||
! SOLUTION
|
! 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 )
|
: euler024 ( -- answer )
|
||||||
999999 10 permutation 10 swap digits>integer ;
|
999999 10 permutation 10 swap digits>integer ;
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
! Copyright (c) 2008 Aaron Schaefer.
|
! Copyright (c) 2008 Aaron Schaefer.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators.lib hashtables kernel math math.combinatorics math.parser
|
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
|
IN: project-euler.032
|
||||||
|
|
||||||
! http://projecteuler.net/index.php?section=problems&id=32
|
! http://projecteuler.net/index.php?section=problems&id=32
|
||||||
|
|
Loading…
Reference in New Issue