From 11088124920c7bc8bd1c54c4265e9dcafb7a024b Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Mon, 20 Dec 2021 23:15:56 +0100 Subject: Added solutions for 18th day: snailfish arithmetic --- 2021/18/second.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 2021/18/second.go (limited to '2021/18/second.go') diff --git a/2021/18/second.go b/2021/18/second.go new file mode 100644 index 0000000..6070d74 --- /dev/null +++ b/2021/18/second.go @@ -0,0 +1,35 @@ +package main + +import ( + "fmt" + "os" + + "git.adyxax.org/aoc/2021/18/pairs" +) + +func main() { + max := 0 + parser := pairs.NewParser(os.Stdin) + pairs := make([]*pairs.Pair, 0) + for { + pair, err := parser.Parse() + if err != nil { + break + } + pairs = append(pairs, pair) + } + l := len(pairs) + for i := 0; i < l; i++ { + for j := 0; j < l; j++ { + if i == j { + continue + } + p1 := pairs[i].DeepCopy() + p2 := pairs[j].DeepCopy() + if m := p1.Add(p2).Magnitude(); max < m { + max = m + } + } + } + fmt.Println(max) +} -- cgit v1.2.3