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