From 3f2ac3a2666f31f593ced54db7510ffafbdeb84a Mon Sep 17 00:00:00 2001 From: dan612 Date: Fri, 12 Dec 2025 17:40:04 -0500 Subject: [PATCH] Day 2 solution. --- 2025/inputs/day_2_input.txt | 1 + 2025/src/Days/Day2.php | 57 +++++++++++++++++++++++++++++++++---- 2 files changed, 53 insertions(+), 5 deletions(-) diff --git a/2025/inputs/day_2_input.txt b/2025/inputs/day_2_input.txt index e69de29..d9427a1 100644 --- a/2025/inputs/day_2_input.txt +++ b/2025/inputs/day_2_input.txt @@ -0,0 +1 @@ +851786270-851907437,27-47,577-1044,1184-1872,28214317-28368250,47766-78575,17432-28112,2341-4099,28969-45843,5800356-5971672,6461919174-6461988558,653055-686893,76-117,2626223278-2626301305,54503501-54572133,990997-1015607,710615-802603,829001-953096,529504-621892,8645-12202,3273269-3402555,446265-471330,232-392,179532-201093,233310-439308,95134183-95359858,3232278502-3232401602,25116215-25199250,5489-8293,96654-135484,2-17 diff --git a/2025/src/Days/Day2.php b/2025/src/Days/Day2.php index 7733e12..211a085 100644 --- a/2025/src/Days/Day2.php +++ b/2025/src/Days/Day2.php @@ -1,17 +1,64 @@ getInputFile('day_2_input.txt'); + // Parse ranges + $ranges = explode(',', trim($input)); + $sumPart1 = 0; + $sumPart2 = 0; + + foreach ($ranges as $range) { + $range = trim($range); + list($start, $end) = explode('-', $range); + $start = (int)$start; + $end = (int)$end; + + // Check each number in range + for ($id = $start; $id <= $end; $id++) { + if ($this->isInvalidId($id)) { + $sumPart2 += $id; + } + } + + } + return [ - 'part_1' => 0, - 'part_2' => 0, + 'part_1' => $sumPart1, + 'part_2' => $sumPart2, ]; } }