Day 10: Factory
Megathread guidelines
- Keep top level comments as only solutions, if you want to say something other than a solution put it in a new post. (replies to comments can be whatever)
- You can send code in code blocks by using three backticks, the code, and then three backticks or use something such as https://topaz.github.io/paste/ if you prefer sending it through a URL
FAQ
- What is this?: Here is a post with a large amount of details: https://programming.dev/post/6637268
- Where do I participate?: https://adventofcode.com/
- Is there a leaderboard for the community?: We have a programming.dev leaderboard with the info on how to join in this post: https://programming.dev/post/6631465


I’m still attempting to make “no lib” solution using matrices and Gaussian elimination. It definitely reduces my solution space, but I’m still struggling to find a good approach to search the space.
My next step is gonna be somehow extracting inequality boundaries, lock a variable at the boundary and solve that reduced equation system. Unfortunately I have no good way to get lower bounds like I do on paper (by default lower bounds for all variables are 0).
After looking at examples of graphical linear system solutions my hope is that optimal solutions will sit on these intersections between equations. The idea hinges on these equations being linear, meaning that without curves there should be no other optimum solutions.
On paper, looking at the inequality ranges, one variable maximum seems imply a minimum for another (in case there are two variables). Searching for solutions by solving smaller and smaller systems with these locked variables feels like a probable approach.