<?php $positions = array_map('intval', explode(',', file_get_contents('./input.txt'))); $min = min($positions); $max = max($positions); $lowest_fuel = $max * count($positions); $best_position = 0; for ($i = $min; $i <= $max; $i++) { $fuel_used = 0; foreach ($positions as $position) { $fuel_used += 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);