ktims
6b6dededc2
day19: clippies
test / AoC 2024 (push) Successful in 3m25s
2024-12-18 22:45:10 -08:00
ktims
65d498f168
day19: complete solution
test / AoC 2024 (push) Failing after 3m46s
2024-12-18 22:39:32 -08:00
ktims
cdb3a7261a
day19: pre puzzle boilerplate
2024-12-18 20:56:36 -08:00
ktims
dbee7d91b6
day18: clippies
test / AoC 2024 (push) Successful in 3m21s
2024-12-18 15:42:23 -08:00
ktims
0fee7c3594
ci: report errors correctly
test / AoC 2024 (push) Failing after 3m11s
2024-12-18 15:36:02 -08:00
ktims
824d111b18
ci: don't use '-D warnings' except for clippy run
test / AoC 2024 (push) Has been cancelled
2024-12-18 15:34:15 -08:00
ktims
a1dceb6ff1
day18: perf: swap dijkstra for bfs for ~30% improvement
test / AoC 2024 (push) Successful in 1m41s
2024-12-18 15:31:12 -08:00
ktims
3712b32634
grid: row and column iterators
2024-12-18 15:31:07 -08:00
ktims
2a11e17d92
day18: improve brute for for binary search for big gainz
...
test / AoC 2024 (push) Successful in 1m48s
also avoid unnecessary path tracking work
2024-12-18 11:35:22 -08:00
ktims
1c254fff93
Revert "cargo: optimize harder"
...
test / AoC 2024 (push) Successful in 1m50s
This reverts commit 44108c4b35 .
2024-12-18 00:53:51 -08:00
ktims
44108c4b35
cargo: optimize harder
2024-12-18 00:41:40 -08:00
ktims
b588837624
day18: small optimization - avoid duplicates
...
not sure if the input contains dupes, but avoid doing a second path
search if the square already contains a byte, seems like a small
performance gain
2024-12-18 00:41:28 -08:00
ktims
9a6ca66059
grid: microoptimizations
test / AoC 2024 (push) Successful in 1m49s
2024-12-17 23:52:14 -08:00
ktims
2729799fa2
day18: optimize
...
* Implement generic path tracing, so part 1 doesn't store and return the full path,
just the count.
* Improve part2 impl to only run path search if the block fell on our
last path.
* Start part2 path search from the best path position immediately before
the placed block.
2024-12-17 23:51:09 -08:00
ktims
8d2fbc0fcb
repo: more aggressive optimization
2024-12-17 23:41:48 -08:00
ktims
4f48d839b2
day18: part 2 solution + some optimizations
test / AoC 2024 (push) Successful in 2m47s
2024-12-17 22:13:49 -08:00
ktims
414569537e
day18: part 2 solution
2024-12-17 22:00:10 -08:00
ktims
5036866663
day18: part 1 solution
2024-12-17 21:52:41 -08:00
ktims
9be86e2cc2
day17: clippies
test / AoC 2024 (push) Successful in 2m38s
2024-12-17 01:03:06 -08:00
ktims
5bcead2691
day17: part 2 solution
test / AoC 2024 (push) Successful in 1m43s
2024-12-17 00:46:18 -08:00
ktims
c99d8a400a
day17: part 1 solution
test / AoC 2024 (push) Successful in 1m54s
2024-12-16 22:29:55 -08:00
ktims
5e8b974137
clippies!
test / AoC 2024 (push) Successful in 1m44s
2024-12-16 14:54:48 -08:00
ktims
28a88e1aa7
day14: replace RE parser with nom consuming parser
...
Almost 100x speedup on parsing phase avoiding RE compile, saves ~60ms
2024-12-16 14:47:48 -08:00
ktims
33615b015f
cargo: update and add nom, misc
2024-12-16 14:44:30 -08:00
ktims
b7a1f05b1e
utils: add misc and implement CustomBounded
2024-12-16 14:41:32 -08:00
ktims
de7ee8f0f6
day14: don't print robots map
test / AoC 2024 (push) Successful in 3m43s
2024-12-16 11:40:10 -08:00
ktims
c31d653612
day16: minor performance and refactoring
test / AoC 2024 (push) Successful in 3m44s
2024-12-16 01:33:02 -08:00
ktims
20e6889572
day16: improve perf again by going to i16 positions
...
test / AoC 2024 (push) Successful in 5m29s
map dimensions fit in i16, so use those in data structures
make grid support generic position type as long as they implement to i64
2024-12-16 01:06:39 -08:00
ktims
755fbbc53d
day16: refactor, optimize
...
split path recording and best cost functions for big gainz
use i32 instead of i64 positions to shrink data structures for some
gainz
2024-12-16 00:58:15 -08:00
ktims
4b85a90635
day16: part 2 solution
test / AoC 2024 (push) Successful in 3m7s
2024-12-15 23:22:14 -08:00
ktims
2cf8527c4f
grid: add add_mut()
2024-12-15 23:21:59 -08:00
ktims
6283ff37f9
day16: part 1 solution
test / AoC 2024 (push) Successful in 2m56s
2024-12-15 22:06:21 -08:00
ktims
f2186d18d3
ci: allow test failures, fix input getting script mistake
test / AoC 2024 (push) Successful in 4m16s
2024-12-15 01:06:09 -08:00
ktims
c261ee56fe
day15: cleanup, clippies
test / AoC 2024 (push) Has been cancelled
2024-12-15 01:03:08 -08:00
ktims
411d6aa26d
day15: cleanup & use the same implementation for both parts
test / AoC 2024 (push) Failing after 2m17s
2024-12-15 00:56:07 -08:00
ktims
c2c0145219
day15: part 2 submitted solution
test / AoC 2024 (push) Failing after 2m27s
2024-12-15 00:50:19 -08:00
ktims
4dfdaca58c
day15: part 1 solution + beginning of part 2
test / AoC 2024 (push) Has been cancelled
2024-12-15 00:49:44 -08:00
ktims
003bc3212d
pre-commit: check clippies and format in pre-commit to avoid CI fail
test / AoC 2024 (push) Successful in 2m55s
2024-12-13 23:51:50 -08:00
ktims
b060de20c7
day11: clippies
test / AoC 2024 (push) Successful in 3m7s
2024-12-13 23:44:46 -08:00
ktims
bc7ec50c94
CI: get real inputs, and do a full run
2024-12-13 23:44:29 -08:00
ktims
8ae2115b52
CI: create fake inputs so tests can run
test / AoC 2024 (push) Successful in 1m27s
2024-12-13 23:06:23 -08:00
ktims
74a6b16924
chore: rust fmt
2024-12-13 23:06:07 -08:00
ktims
e8a38e7b24
day14: pretty print a tree
2024-12-13 23:05:58 -08:00
ktims
c6153663b5
day14: complete solution
test / AoC 2024 (push) Failing after 58s
2024-12-13 22:53:07 -08:00
ktims
8b011941c4
CI: make a workspace
test / AoC 2024 (push) Failing after 1m7s
2024-12-13 18:09:22 -08:00
ktims
d88f907c03
clippies
test / AoC 2024 (push) Failing after 1m14s
2024-12-13 17:55:28 -08:00
ktims
d6d81a0c29
CI: run tests
test / AoC 2024 (push) Failing after 1m22s
2024-12-13 17:52:42 -08:00
ktims
ed184fc92c
day12/day13: codspeed compat (&str input)
2024-12-13 17:42:44 -08:00
ktims
a1774d1f73
grid: impl FromStr for Grid<u8>
2024-12-13 17:28:45 -08:00
ktims
3bbf05b30c
pre-commit
2024-12-13 02:24:18 -08:00