From 6b5c65a81162a550f523264130b641720803a8b0 Mon Sep 17 00:00:00 2001 From: Araozu Date: Fri, 1 Mar 2024 09:32:39 -0500 Subject: [PATCH] Improve performance of day 5 --- solutions/day05.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/solutions/day05.go b/solutions/day05.go index 48b0df9..e9824ab 100644 --- a/solutions/day05.go +++ b/solutions/day05.go @@ -1,21 +1,21 @@ package solutions import ( - "regexp" "slices" "strconv" "strings" ) func seatStrToSeatId(seat string) int { - lowRegex := regexp.MustCompile("[FL]") - highRegex := regexp.MustCompile("[BR]") + rowStr := seat[:7] + rowStr = strings.ReplaceAll(rowStr, "F", "0") + rowStr = strings.ReplaceAll(rowStr, "B", "1") + columnStr := seat[7:] + columnStr = strings.ReplaceAll(columnStr, "L", "0") + columnStr = strings.ReplaceAll(columnStr, "R", "1") - seatStr := lowRegex.ReplaceAllString(seat, "0") - seatStr = highRegex.ReplaceAllString(seatStr, "1") - - row, _ := strconv.ParseInt(seatStr[:7], 2, 64) - column, _ := strconv.ParseInt(seatStr[7:], 2, 64) + row, _ := strconv.ParseInt(rowStr, 2, 64) + column, _ := strconv.ParseInt(columnStr, 2, 64) return int(row*8 + column) }