George Thomas
bb6bd7ff25
Rename function
2026-01-07 15:06:48 +00:00
George Thomas
5e7baf8cc5
Use itertools to chain sorting in day 5
2026-01-07 15:02:13 +00:00
George Thomas
3d2785b7d3
Make Rust day 5 vector operations more efficient
...
We do more in-place and operate on the end of the vector to avoid quadratic complexity.
2026-01-07 14:45:55 +00:00
George Thomas
70b56f4501
Use new type for day 5 ranges
...
This is cleaner and faster, with inherent methods and mutability.
2026-01-07 14:29:47 +00:00
George Thomas
88c138baf0
Solve day 5 in Rust
2026-01-07 14:05:58 +00:00
George Thomas
bf1cac4e94
Use proper Nom number parsing functions
...
This was previously a documentation/discoverability issue, rather than a conscious choice to avoid these.
2026-01-07 13:41:03 +00:00
George Thomas
9fdd0cc28e
Solve day 4 in Rust
2025-12-22 19:00:09 +00:00
George Thomas
3114920494
Remove redundant constraint
2025-12-22 14:53:22 +00:00
George Thomas
4a3506a58d
Swap findMax result tuple order
2025-12-19 15:57:11 +00:00
George Thomas
17f4b83fc0
Dereference at call site
2025-12-19 15:57:06 +00:00
George Thomas
73ea25236f
Improve error handling by not panicking in helper function
2025-12-19 15:34:13 +00:00
George Thomas
83e957d5f9
Fix day 3 error case
...
This doesn't actually matter for the input data given, but it ensures we get the right error when the battery list is too short, instead of unwrapping.
2025-12-19 15:14:39 +00:00
George Thomas
2258f965c1
Solve day 3 in Rust
2025-12-19 14:51:36 +00:00
George Thomas
a321ce3f22
Revert "Minor refactor (inlining)"
...
This reverts commit bb57673f8a01e77e42c38bbf5bab60fba8c63098.
Actually, the symmetry with `is_repetition_2` is worth the slight extra verbosity.
2025-12-18 13:01:07 +00:00
George Thomas
bb57673f8a
Minor refactor (inlining)
2025-12-18 13:00:55 +00:00
George Thomas
dc36ba47ff
Avoid unnecessary slice operator
2025-12-17 14:25:10 +00:00
George Thomas
437c2f290d
Use strings for output types in Rust
...
This is a compromise that gets us most of the way towards what we have with the heterogeneous list in Haskell, but without any complex abstractions.
2025-12-16 17:38:53 +00:00
George Thomas
c4c2c82f81
Remove redundant type annotation
2025-12-10 21:58:57 +00:00
George Thomas
415ed20dd5
Use Nom for Rust parsing
2025-12-10 12:39:12 +00:00
George Thomas
fa6f734286
Solve day 2 in Rust
2025-12-10 10:51:30 +00:00
George Thomas
abda4f84d8
Solve day 1 in Rust
2025-12-09 19:18:28 +00:00