Solved ProjectEuler/011: php, ruby

This commit is contained in:
FuryFire
2012-03-07 14:40:20 +01:00
parent fcfb0a37f5
commit 18b050010e
4 changed files with 130 additions and 0 deletions

View File

@ -0,0 +1,39 @@
<?php
foreach(file('php://stdin') as $line) {
$matrix[] = explode(' ', $line);
}
$max = 0;
//Left and right
for ($y = 0; $y < 19; $y++) {
for ($x = 0; $x < 16; $x++) {
$cmp = $matrix[$y][$x] * $matrix[$y][$x + 1] * $matrix[$y][$x + 2] * $matrix[$y][$x + 3];
$max = ($cmp > $max) ? $cmp : $max;
}
}
//Vertical
for($x = 0; $x < 19; $x++) {
for ($y = 0; $y < 16; $y++) {
$cmp = $matrix[$y][$x] * $matrix[$y + 1][$x] * $matrix[$y + 2][$x] * $matrix[$y + 3][$x];
$max = ($cmp > $max) ? $cmp : $max;
}
}
//Diagonally left->down
for($x = 0; $x < 16; $x++) {
for ($y = 0; $y < 16; $y++) {
$cmp = $matrix[$y][$x] * $matrix[$y + 1][$x + 1] * $matrix[$y + 2][$x + 2] * $matrix[$y + 3][$x + 3];
$max = ($cmp > $max) ? $cmp : $max;
}
}
//Diagonally right->down
for($x = 4; $x < 19; $x++) {
for ($y = 0; $y < 16; $y++) {
$cmp = $matrix[$y][$x] * $matrix[$y + 1][$x - 1] * $matrix[$y + 2][$x - 2] * $matrix[$y + 3][$x - 3];
$max = ($cmp > $max) ? $cmp : $max;
}
}
echo $max;