master
Gnieark 9 years ago
parent f2e07f9a03
commit 9a22d0c7e3

@ -1,25 +1,20 @@
<?php
/*
* Gnieark's anwser to euler problem 26
* https://projecteuler.net/problem=26
* Gnieark's anwser to euler problem 25
* https://projecteuler.net/problem=25
*/
$beastDenominateur=0;
$longestCycle=0;
for ($denominateur=2; $denominateur < 1000; $denominateur ++){
$reste=1;
$restes=array();
$count=0;
while (!in_array($reste,$restes)){
$restes[]=$reste;
$reste=$reste*10;
$reste=fmod($reste,$denominateur);
//see https://fr.wikipedia.org/wiki/Suite_de_Fibonacci#Avec_la_formule_de_Binet
echo intval((log(10)*999 + (log(5)/2) ) / log(1.61803398875)) +1;
/*
Very long solution that didn't test :
$i=1;
$j=2;
$count=2;
while(strlen($i)<1000){
$new=gmp_add($i,$j);
$i=$j;
$j=$new;
$count++;
}
if($count > $longestCycle){
$longestCycle=$count;
$beastDenominateur=$denominateur;
}
}
echo $beastDenominateur."\n";
echo $count;
*/

@ -0,0 +1,25 @@
<?php
/*
* Gnieark's anwser to euler problem 26
* https://projecteuler.net/problem=26
*/
$beastDenominateur=0;
$longestCycle=0;
for ($denominateur=2; $denominateur < 1000; $denominateur ++){
$reste=1;
$restes=array();
$count=0;
while (!in_array($reste,$restes)){
$restes[]=$reste;
$reste=$reste*10;
$reste=fmod($reste,$denominateur);
$count++;
}
if($count > $longestCycle){
$longestCycle=$count;
$beastDenominateur=$denominateur;
}
}
echo $beastDenominateur."\n";
Loading…
Cancel
Save