123 Commits

Author SHA1 Message Date
c261ee56fe
day15: cleanup, clippies
Some checks failed
test / AoC 2024 (push) Has been cancelled
2024-12-15 01:03:08 -08:00
411d6aa26d
day15: cleanup & use the same implementation for both parts
Some checks failed
test / AoC 2024 (push) Failing after 2m17s
2024-12-15 00:56:07 -08:00
c2c0145219
day15: part 2 submitted solution
Some checks failed
test / AoC 2024 (push) Failing after 2m27s
2024-12-15 00:50:19 -08:00
4dfdaca58c
day15: part 1 solution + beginning of part 2
Some checks failed
test / AoC 2024 (push) Has been cancelled
2024-12-15 00:49:44 -08:00
003bc3212d
pre-commit: check clippies and format in pre-commit to avoid CI fail
All checks were successful
test / AoC 2024 (push) Successful in 2m55s
2024-12-13 23:51:50 -08:00
b060de20c7
day11: clippies
All checks were successful
test / AoC 2024 (push) Successful in 3m7s
2024-12-13 23:44:46 -08:00
bc7ec50c94
CI: get real inputs, and do a full run 2024-12-13 23:44:29 -08:00
8ae2115b52
CI: create fake inputs so tests can run
All checks were successful
test / AoC 2024 (push) Successful in 1m27s
2024-12-13 23:06:23 -08:00
74a6b16924
chore: rust fmt 2024-12-13 23:06:07 -08:00
e8a38e7b24
day14: pretty print a tree 2024-12-13 23:05:58 -08:00
c6153663b5
day14: complete solution
Some checks failed
test / AoC 2024 (push) Failing after 58s
2024-12-13 22:53:07 -08:00
8b011941c4
CI: make a workspace
Some checks failed
test / AoC 2024 (push) Failing after 1m7s
2024-12-13 18:09:22 -08:00
d88f907c03
clippies
Some checks failed
test / AoC 2024 (push) Failing after 1m14s
2024-12-13 17:55:28 -08:00
d6d81a0c29
CI: run tests
Some checks failed
test / AoC 2024 (push) Failing after 1m22s
2024-12-13 17:52:42 -08:00
ed184fc92c
day12/day13: codspeed compat (&str input) 2024-12-13 17:42:44 -08:00
a1774d1f73
grid: impl FromStr for Grid<u8> 2024-12-13 17:28:45 -08:00
3bbf05b30c
pre-commit 2024-12-13 02:24:18 -08:00
6a8a7a9ad1
pre-commit update 2024-12-13 02:22:55 -08:00
1a6d37f4f3
clippies 2024-12-13 02:17:57 -08:00
35637cece1
readme 2024-12-13 02:15:41 -08:00
ebf5a0a489
day13: complete solution 2024-12-13 02:12:18 -08:00
4aa7e9f43c
day3: perf - branchless 2024-12-12 17:56:28 -08:00
a5439062a4
day3: performance - avoid converting &[u8] to &str 2024-12-12 17:38:42 -08:00
3658183deb
day7: performance. DFS with pruning. 2024-12-12 16:02:13 -08:00
38cba37b06
day5: perf: switch to sort-based implementation 2024-12-12 14:50:00 -08:00
6022d2cc39
multiple: Use FxHashMap for s p e e d 2024-12-12 14:07:22 -08:00
447ff5c62c
grid: improve ergonomics with more trait impls and other improvements
update puzzles to pass tests, some performance gains
2024-12-12 02:14:29 -08:00
c213bbbc27
day12: optimization and cleanup 2024-12-12 01:24:14 -08:00
a56fc933c9
day12: complete solution 2024-12-11 22:27:59 -08:00
31eb500832
day7: slight performance improvement from skipping ThreadLoacls 2024-12-11 19:40:45 -08:00
4c14c6092e
bugfix: count off by one, thought ^ was left in the map, but it gets
replaced by X
2024-12-11 18:59:58 -08:00
de535303d4
day11: don't use aoc_generator 2024-12-11 18:43:57 -08:00
50b6d045e7
multiple: genericize Grid over coordinate type, parallelism for day 11 2024-12-11 18:43:13 -08:00
d2defae8a2
chore: make day modules public 2024-12-11 18:40:53 -08:00
cd8900d936
chore: enable LTO for release builds 2024-12-11 18:40:29 -08:00
11b29a4d57
chore: refactor for cargo-aoc / codspeed 2024-12-11 15:45:52 -08:00
3bfde9fd9b
day11: some cleanup, slight performance 2024-12-11 03:11:17 -08:00
2e239681ce
day11: performance 2024-12-11 00:55:47 -08:00
a7354b6ed7
day11: part 2 solution 2024-12-10 23:40:03 -08:00
462918b382
day11: part 1 solution 2024-12-10 21:55:00 -08:00
8af11a6092
day10: performance. slight gain from memoizing visited positions in p1. 2024-12-10 17:07:00 -08:00
d9d55b069f
day10: optimization
Part 2 doesn't actually require tracking state at all, it's enough to
just follow the rules and count every DFS that lands on a target square.

Part 1 optimized by only tracking which targets have been previously
visited, instead of all squares.

Both parts, pass position reference to recursive calls instead of by
value for tiny improvement.
2024-12-10 16:20:15 -08:00
0716dde8b1
day10: complete solution 2024-12-09 21:59:39 -08:00
206c1fca85
day9: optimize part 2 2024-12-09 00:23:40 -08:00
f7cf4f1e9f
day9: optimize part 1 2024-12-08 23:58:47 -08:00
b08c8fbd80
day9: use part 2 'inodes' table to speed up part 1 2024-12-08 23:51:51 -08:00
2bc751dd0d
day9: complete solution
previous commit should actually work for part 1 if you don't truncate
the input.
2024-12-08 23:34:15 -08:00
a6ea5b4155
day9: second rewrite, still failing 2024-12-08 22:57:20 -08:00
622877843e
day8: refactor and cleanup 2024-12-07 22:49:57 -08:00
47e40942e2
day8: complete solution 2024-12-07 21:43:56 -08:00