TL;DR

I recently completed Advent of Code 2017.

And I totally enjoyed it.

I put it in pause for a couple of months because section 2 of puzzle 20 put me in paralysis by analysis due to concerns about the complexity.

Well, actually I had no clue on how to approach it and I was thinking that I could just run the simulation for some time. Except I wouldn’t be sure about when to stop…

I eventually landed on a $O(n^2)$ algorithm to pre-compute all possible crossings, and then analyze them in order of occurrence.

The rest of the puzzles were OK and, as usual, I liked it very much to receive the final gold star… for free.

If you want to pass some time coding for fun I suggest Advent of Code puzzles a lot… they’re really engaging!

Have fun and stay safe folks!