After noticing the gopher inI hadn't expected it to work at all.This was long time ago, but I found (almost) the same rules, following this path: As the program is supposed to be adding binary numbers, I first wrote the binary+ function using only AND, OR, and XOR. These rules are then just devised by studying how the function behaves with different inputs. However, it did take me a long time to finally get the result.I searched online for information about ripple carry adders and found what I thought was a nicely explained solution to part 2 written in Go. The approach used was to identify crossed wires by their failure to adhere to some local connection rules.

https://www.bytesizego.com/blog/aoc-day24-golang
Scratchy suddenly became interested in ripple adders. In my opinion someone has the idea of a tasty blue snack to eat. Shy just finished a long meeting on fish delivery and also looks hungry.
With three kittens working in parallel, a parallel solution to day 24 should be possible. I think computing the loss function over all wire swaps is a task that could easily be distributed across a large number of cores.
Statistics: Posted by ejolson — Tue Apr 22, 2025 3:45 pm