]> gitweb.factorcode.org Git - factor.git/blob - extra/project-euler/024/024.factor
Factor source files should not be executable
[factor.git] / extra / project-euler / 024 / 024.factor
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 ;
4 IN: project-euler.024
5
6 ! http://projecteuler.net/index.php?section=problems&id=24
7
8 ! DESCRIPTION
9 ! -----------
10
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:
15
16 !     012   021   102   120   201   210
17
18 ! What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4,
19 ! 5, 6, 7, 8 and 9?
20
21
22 ! SOLUTION
23 ! --------
24
25 : euler024 ( -- answer )
26     999999 10 permutation 10 digits>integer ;
27
28 ! [ euler024 ] 100 ave-time
29 ! 0 ms ave run time - 0.27 SD (100 trials)
30
31 SOLUTION: euler024