$nums = $input->numbers;
// ==================================================
// > PART 1
// ==================================================
function sums($nums, $start, $length) {
$sums = [];
for ($i = $start; $i < $start + $length; $i++) {
for ($j = $i + 1; $j < $start + $length; $j++) {
$sums[] = $nums[$i] + $nums[$j];
}
}
return $sums;
}
for ($i = 25; $i < count($nums); $i++) {
if (!in_array($nums[$i], sums($nums, $i - 25, 25))) break;
}
$solution_1 = $nums[$i];
// ==================================================
// > PART 2
// ==================================================
for ($i = 0; $i < count($nums); $i++) {
$sum = $nums[$i];
for ($j = $i + 1; $j < count($nums); $j++) {
$sum += $nums[$j];
if ($sum > $solution_1) break;
if ($sum == $solution_1) break 2;
}
}
$set = $nums->slice($i, $j - $i + 1);
$solution_2 = $set->min() + $set->max();