From 42e1a278060a9b03974b036d4e4fbe399ac5000e Mon Sep 17 00:00:00 2001 From: Parnic Date: Thu, 14 Dec 2023 23:05:46 -0600 Subject: [PATCH] Improve day 14 part 2 runtime I realized I was looking for the third occurrence when the second works just as well. --- src/14.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/14.cs b/src/14.cs index b0a7f82..32329e1 100644 --- a/src/14.cs +++ b/src/14.cs @@ -164,10 +164,10 @@ internal class Day14 : Day Tilt(part2, eastDir); var result = Stringify(part2); - if (seen.Count(g => g == result) == 2) + if (seen.Any(g => g == result)) { int periodStart = seen.FindIndex(g => g == result); - int periodLen = seen.Skip(periodStart + 1).ToList().FindIndex(g => g == result) + 1; + int periodLen = seen.Count - periodStart; loopCycle = ((1000000000L - periodStart) % periodLen) + periodStart; break; }