From cc2d7d1a3d39a494c8ff15b34fdf9adbe270e517 Mon Sep 17 00:00:00 2001 From: Kharec Date: Thu, 4 Dec 2025 20:59:09 +0100 Subject: [PATCH] feat: solve part one using basic regex parsing --- internal/2015/DayTwelve/code.go | 35 +++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 internal/2015/DayTwelve/code.go diff --git a/internal/2015/DayTwelve/code.go b/internal/2015/DayTwelve/code.go new file mode 100644 index 0000000..4294a9e --- /dev/null +++ b/internal/2015/DayTwelve/code.go @@ -0,0 +1,35 @@ +package daytwelve + +import ( + "advent-of-code/internal/registry" + "os" + "regexp" + "strconv" + "strings" +) + +func init() { + registry.Register("2015D12", ParseInput, PartOne, PartTwo) +} + +func ParseInput(filepath string) []string { + content, _ := os.ReadFile(filepath) + return strings.Split(string(content), "\n") +} + +func PartOne(data []string) int { + re := regexp.MustCompile(`-?\d+`) + sum := 0 + for _, line := range data { + matches := re.FindAllString(line, -1) + for _, match := range matches { + number, _ := strconv.Atoi(match) + sum += number + } + } + return sum +} + +func PartTwo(data []string) int { + return 0 +}