From 953021438f5a7b50307b307bfcac6a512a7ad624 Mon Sep 17 00:00:00 2001 From: Jens True Date: Fri, 28 Jun 2024 08:34:07 +0000 Subject: [PATCH] More solutions --- ProjectEuler/032/solve.php | 23 +++++++++++++++++++++++ ProjectEuler/037/solve.php | 33 +++++++++++++++++++++++++++++++++ ProjectEuler/043/solve.php | 38 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 ProjectEuler/032/solve.php create mode 100644 ProjectEuler/037/solve.php create mode 100644 ProjectEuler/043/solve.php diff --git a/ProjectEuler/032/solve.php b/ProjectEuler/032/solve.php new file mode 100644 index 0000000..b8596ed --- /dev/null +++ b/ProjectEuler/032/solve.php @@ -0,0 +1,23 @@ +1,50=>1,51=>1,52=>1,53=>1,54=>1,55=>1,56=>1,57=>1)) { return true;} else { return false; } +} + +$products = []; +for($a = 1; $a <= 2500; $a++) { + for($b = 1; $b <= 2500; $b++) { + $p = $a*$b; + $str = (string)$a.$b.$p; + if(strlen($str) == 9 && pandigital($str)) + { + $products[] = $p; + echo "Found $a*$b=$p\n"; + } + } +} + +$products = array_unique($products); +echo array_sum($products).PHP_EOL; \ No newline at end of file diff --git a/ProjectEuler/037/solve.php b/ProjectEuler/037/solve.php new file mode 100644 index 0000000..b9ee55f --- /dev/null +++ b/ProjectEuler/037/solve.php @@ -0,0 +1,33 @@ +1;} + +for ($prime = 11; $count < 11; $prime += 2) { + if (is_prime($prime)) { + //echo "Testing $prime\n"; + for ($c = 1; $c < strlen($prime); $c++) { + $left = substr($prime, -$c); + //echo "Trimmed left $left\n"; + if (!is_prime($left)) { + //echo "Not prime $left\n"; + continue 2; + } + } + + for ($c = 1; $c < strlen($prime); $c++) { + $right = substr($prime, 0, $c); + //echo "Trimmed right $right\n"; + if (!is_prime($right)) { + //echo "Not prime $right\n"; + continue 2; + } + } + $sum += $prime; + $count++; + echo "found $prime\n"; + } +} + +echo "Total sum: $sum\n"; diff --git a/ProjectEuler/043/solve.php b/ProjectEuler/043/solve.php new file mode 100644 index 0000000..1d1e985 --- /dev/null +++ b/ProjectEuler/043/solve.php @@ -0,0 +1,38 @@ + 1, 49 => 1, 50 => 1, 51 => 1, 52 => 1, 53 => 1, 54 => 1, 55 => 1, 56 => 1, 57 => 1)) { + return true; + } else { + return false; + } +} + +$sum = 0; +for ($i = 1023456789; $i < 9876543210; $i++) { +//$i = 1406357289; + if (substr($i, 7, 3) % 17 == 0) { + if (substr($i, 6, 3) % 13 == 0) { + if (substr($i, 5, 3) % 11 == 0) { + if (substr($i, 4, 3) % 7 == 0) { + if (substr($i, 3, 3) % 5 == 0) { + if (substr($i, 2, 3) % 3 == 0) { + if (substr($i, 1, 3) % 2 == 0) { + echo "Close $i\n"; + if (pandigital($i)) { + echo "Found: $i\n"; + $sum += $i; + } + } + } + } + } + } + } + } +} + +echo "Sum: $sum\n"; \ No newline at end of file