1 ! Copyright (c) 2008 Aaron Schaefer.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: kernel math.combinatorics math.parser project-euler.common ;
6 ! http://projecteuler.net/index.php?section=problems&id=24
11 ! A permutation is an ordered arrangement of objects. For example, 3124 is one
12 ! possible permutation of the digits 1, 2, 3 and 4. If all of the permutations
13 ! are listed numerically or alphabetically, we call it lexicographic order. The
14 ! lexicographic permutations of 0, 1 and 2 are:
16 ! 012 021 102 120 201 210
18 ! What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4,
25 : euler024 ( -- answer )
26 999999 10 permutation 10 digits>integer ;
28 ! [ euler024 ] 100 ave-time
29 ! 0 ms ave run time - 0.27 SD (100 trials)