From a75e7d04c2c8ff888f598b12ac2a63f245dd750a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eduardo=20C=C3=A1ceres?= Date: Sat, 9 Dec 2023 18:38:22 +0100 Subject: [PATCH] Day 9 - move reducing logic to ParseInput --- src/AoC_2023/Day_09.cs | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/AoC_2023/Day_09.cs b/src/AoC_2023/Day_09.cs index 0d2a54f..5252658 100644 --- a/src/AoC_2023/Day_09.cs +++ b/src/AoC_2023/Day_09.cs @@ -2,7 +2,7 @@ public class Day_09 : BaseDay { - private readonly List> _input; + private readonly List>> _input; public Day_09() { @@ -13,9 +13,9 @@ public override ValueTask Solve_1() { int result = 0; - foreach (var input in _input) + foreach (var sequences in _input) { - foreach (var sequence in ReduceToZero(input)) + foreach (var sequence in sequences) { result += sequence[^1]; } @@ -28,10 +28,8 @@ public override ValueTask Solve_2() { int result = 0; - foreach (var input in _input) + foreach (var sequences in _input) { - var sequences = ReduceToZero(input); - for (int i = 0; i < sequences.Count; i++) { result += (i % 2 == 1) @@ -45,7 +43,7 @@ public override ValueTask Solve_2() private static List> ReduceToZero(List input) { - List> sequences = new(input.Count) { new(input) }; + List> sequences = new(input.Count) { input }; while (true) { @@ -75,13 +73,13 @@ private static List> ReduceToZero(List input) return sequences; } - private IEnumerable> ParseInput() + private IEnumerable>> ParseInput() { var file = new ParsedFile(InputFilePath); while (!file.Empty) { - yield return file.NextLine().ToList(); + yield return ReduceToZero(file.NextLine().ToList()); } } }