This year will do it in Haskell, but might try few days in Rust as well


Feedback

Day 1:

Day one was nice.

A bit rusty, on haskell but ok enough, after solving it I thought of a way to use scanl instead of recursion

Quite happy of the simplification I managed to do, next step would be to try and create those the first time and not using a temporary version

Code explanation

Day 2:

Today first solution was quite intuitive, then for the second one I tried different ideas to try and have a clean solution such as using Regex but didn’t manage to find a clean solution.

So I did it by hand:

Code explanation

Day 3:

Today was interesting.

I had to remember a few things about number and once I did I felt stupid not to have thought of it earlier.

Code explanation

Day 4:

Today was quite nice and after part 1 I just adapted a little bit part 1 to actually remove the rolls and that was most of the work for this part.

Code explanation

Day 5:

Today was the first day with an impossible solution, the first version of the second exercise crashed so I had to think a bit and make a cleaner version before solving the problem.

Code explanation

Day 6:

Today, the puzzles were very simple, the actual thinking was the parsing.

At first I just decided to split on the spaces which worked for part1 but then I ended up removing important information for part2, so I had to adapt the parsing.

Code explanation

Day 7:

Today needed the some sort of memoization, instead, I decided to limit the number of calls to the strict minimum

Code explanation

Day 8:

Today had the first solution running for 8s and optimized it quite a lot.

Maybe I’ll try to have another call named commonCalc or similar to move the code that is not parsing but needed to both parts outside from the parsing function…

Code explanation

Day 9:

Today was the day that required the longest code at the moment.

Had to vibe code a visualizer in python in order to find tricks about the input

Code explanation

Day 10:

Today was really hard, spent all day on the part2, and even then only got a runtime of 75 minutes

Code explanation

Day 11:

Today was a nice and appreciated rest compared to yesterday.

Code explanation

Day 12:

Well.. as a general feedback, let’s say the input was easier than expected…

Even some code doing the wrong calculation can have the right results.

Code explanation