Day 11: Reactor

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

  • addie@feddit.uk
    link
    fedilink
    arrow-up
    2
    ·
    5 days ago

    If you work out a solution to yesterday’s part 2 which isn’t just “cheat and rely on an external solver library”, I will be most impressed.

    Programming and mathematics have quite a large overlap and if you want to write tough puzzles it’ll be “deep in the woods” for both, but that question is very much on the maths side. And “are you able to pass arguments to Z3?” isn’t a very satisfying puzzle for me.

    • Avicenna@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      5 days ago

      I did linear algebra with sympy over Q to reduce the search space to nullspace x [-N,N] grid (which is generally <=2 dimensional in these inputs and N<50 seems sufficient in most cases) then made easy work of it with vectorization. Similarly for part 2 did linear algebra over F2 but the search grid is also much smaller [0,1] x nullspace