22 lines
570 B
PHP
22 lines
570 B
PHP
|
<?php
|
||
|
|
||
|
$positions = array_map('intval', explode(',', file_get_contents('./input.txt')));
|
||
|
|
||
|
$min = min($positions);
|
||
|
$max = max($positions);
|
||
|
|
||
|
$lowest_fuel = $max * array_sum(range(1, $max));
|
||
|
$best_position = 0;
|
||
|
|
||
|
for ($i = $min; $i <= $max; $i++) {
|
||
|
$fuel_used = 0;
|
||
|
foreach ($positions as $position) {
|
||
|
$fuel_used += array_sum(range(1, abs($position - $i)));
|
||
|
}
|
||
|
if ($lowest_fuel > $fuel_used) {
|
||
|
$lowest_fuel = $fuel_used;
|
||
|
$best_position = $i;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
echo sprintf('Best position is %u with %u fuel used.', $best_position, $lowest_fuel);
|