My goal with this was to learn Rust. Considering that goal, most of the solutions are 'over-engineered'. I stopped after finishing day 20 because the solutions became more mathematical focused, so I wasn't growing my Rust knowledge further.
- All days feature multiple tests for correctness.
- Some days leverage unique data from my own input, so the solutions are not guaranteed to work on any arbitrary input.
- Most solutions aren't 'optimal', so some take may take minutes to complete.
All solutions require inputs located at resources/inputs/day_XX.txt. "resources/inputs/day_1.txt"
cargo run {DAY} {PART}
cargo run 5 1 to run solution for day 5 part 1