This will be a chance for me to get good at writing rust. I will take all the chances I can to overeengineer. I will do this daily (unless life calls me)
Problems after the day 14 were quite hard and took a lot of my time and energy, so I'll give up finishing this challenge in time and focus on other projects (renecouto/cinematickets) or activities.
Either way I'm very happy to have gotten as far as I did, and the range of different challenges (geometry, simulations, dynamic programming, breadth first search) made me feel smarter as I solved them. So this month got me more than 40 hours of practice in using data structures and implementing algorithms in rust, but there's still a key selling point for rust that I haven't learned enough, and that is error handling instead of panicking. So the next step after finishing all challenges would be to revisit the solutions and return error (almost) every time we panic.