Added first version of helper tool

This commit is contained in:
FuryFire
2012-03-15 13:12:02 +01:00
parent 823b0a332a
commit e99ce2c532
10 changed files with 92 additions and 12 deletions

11
ProjectEuler/024/desc.yml Normal file
View File

@ -0,0 +1,11 @@
title: What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?
url: http://projecteuler.net/problem=24
desc: |
A permutation is an ordered arrangement of objects. For example, 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations are listed numerically or alphabetically, we call it lexicographic order. The lexicographic permutations of 0, 1 and 2 are:
012 021 102 120 201 210
What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?
todo: Improve algorithm -
solution: Bruteforce
solutions:

View File

@ -0,0 +1,25 @@
<?php
function fac($number) {
if($number == 1)
return 1;
return $number * fac($number-1);
}
$result = array(0,0,0,0,0,0,0,0,0,0);
$endsteps = 1000000;
$cstep = 0;
$cdigit = 9;
while($cdigit != 0) {
do{
$result[9-$cdigit]++;
$cstep += fac($cdigit);
} while ($cstep < $endsteps) ;
echo "Done with $cdigit - steps:$cstep\n";
$cdigit--;
}
echo "DONE!";
print_r($result);
echo " - ".$cstep ."\n";
echo "Result: 2783915460";