|
1 | 1 | # Advent of Code [![checks-badge]][checks-link] [![docs-badge]][docs-link] |
2 | 2 |
|
3 | | -Complete 2024 to 2015 entries written in Rust for the annual [Advent of Code] challenge, |
4 | | -solving 500 stars in less than 1 second. |
| 3 | +Blazing fast Rust solutions for every [Advent of Code] puzzle from 2015 to 2024, taking |
| 4 | +**502 milliseconds** to solve all 500 stars. Each solution is carefully optimized for performance |
| 5 | +while ensuring the code remains concise, readable, and idiomatic. |
5 | 6 |
|
6 | 7 | ## Features |
7 | 8 |
|
8 | | -* Each solution uses the most efficient algorithms to the best of my knowledge. |
9 | | -* Self contained depending only on the `std` Rust library. No use of `unsafe` features. |
10 | | -* Consistently formatted with `rustfmt` and linted by `clippy`. |
11 | | -* Thoroughly commented with `rustdoc` generated [documentation online][docs-link]. |
12 | | -* Test coverage with continuous integration provided by [GitHub Actions][checks-link]. |
| 9 | +* **Minimal** - Depends only on the standard library. |
| 10 | +* **High Quality** - Formatted with `rustfmt`, linted by `clippy` and continuously tested |
| 11 | + via [GitHub Actions][checks-link]. No `unsafe` code. |
| 12 | +* **Well Documented** - Every solution is comprehensively commented with |
| 13 | + [rustdoc-generated documentation][docs-link] also available online. |
13 | 14 |
|
14 | 15 | ## Quickstart |
15 | 16 |
|
@@ -58,7 +59,6 @@ Improvements to solutions are always appreciated. Please see the |
58 | 59 | ## Performance |
59 | 60 |
|
60 | 61 | Benchmarks are measured using the built-in `cargo bench` tool run on an [Apple M2 Max][apple-link]. |
61 | | -All 250 solutions from 2024 to 2015 complete sequentially in **502 milliseconds**. |
62 | 62 | Interestingly 86% of the total time is spent on just 9 solutions. |
63 | 63 | Performance is reasonable even on older hardware, for example a 2011 MacBook Pro with an |
64 | 64 | [Intel i7-2720QM][intel-link] processor takes 3.5 seconds to run the same 250 solutions. |
|
0 commit comments