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

you are viewing a single comment's thread
view the rest of the comments
[โ€“] 2 points 8 months ago

Python

I know I'm late to the party, but I fucking did it. Fuck this was hard. It didn't help me, that I decided not to use any external libs in my solutions. It does part two in ~5 s.

Yes, I'm proud of myself. No, the code is not good by any means.

The solution itself:

  1. Breadth first search with condition that every button will be pressed at most once;
  2. There were several approaches:
    • A* โ€” no luck;
    • What ever the fuck I did:
      1. Gauss-Jordan reduction;
      2. Simplex to optimize reduced problem, if previous step doesn't provide a full solution;
      3. On top of all that โ€” branch and bound search to resolve cases where optimization doesn't provide an integer solution.

Here's the link to my mess

  • source