Commit Graph

324 Commits

Author SHA1 Message Date
kageru aa33a74bc7
Simplify match 2021-12-10 22:51:24 +01:00
kageru 6d9fbe0edf Refactor day 10 2021-12-10 15:09:09 +01:00
kageru 2103005872 Add day 10
Ugly for now
2021-12-10 14:10:23 +01:00
kageru ed3b0b579c
Try 9/2 2021-12-09 21:14:08 +01:00
kageru 96877c6359 Day 9 simplify neighbors 2021-12-09 11:10:21 +01:00
kageru 2a1c7ee382 Add day 9 part 1 2021-12-09 10:46:49 +01:00
kageru 48a392325f
Day 8: more optimizations
This is getting ridiculous, but I couldn’t sleep
2021-12-09 00:47:30 +01:00
kageru 30c8e0e1ff
Add unchecked string parsing
Saves ~5-10% in parsing benchmarks
2021-12-09 00:26:00 +01:00
kageru 9db1906760
Day 8: No longer brute force anything 2021-12-08 20:49:05 +01:00
kageru 188dd576a9
Bitmagic 2021-12-08 20:10:16 +01:00
kageru a1f6eb888c Day 8 Refactoring III
Completely remove SevenSegmentDisplay type
2021-12-08 16:54:07 +01:00
kageru 83419cbdf3 Day 8 Refactoring II
Unbloating the parsed type
2021-12-08 14:07:44 +01:00
kageru 0b77540d9d Day 8 Refactoring I
Parsing and variable names
2021-12-08 14:07:14 +01:00
kageru 2ba51b2208 Add day 8 2021-12-08 13:42:35 +01:00
kageru cfb1e87465
Make 7/1 faster 2021-12-07 19:43:24 +01:00
kageru 744aa2fc72 Simplify day 7 2021-12-07 14:06:09 +01:00
kageru 413339cdb8 Add day 7 2021-12-07 11:57:45 +01:00
kageru 728b95b9e1 Death to imperative programming! 2021-12-06 14:10:46 +01:00
kageru fcab7acc74 Slightly optimize input parsing 2021-12-06 13:46:34 +01:00
kageru c073e2f906 Make day 6 better 2021-12-06 13:05:57 +01:00
kageru fc60409b42 Add day 6 part 2 2021-12-06 12:26:12 +01:00
kageru 0256625608 Add day 6 part 1 2021-12-06 11:01:23 +01:00
kageru 78de4f1d46
Add macro for static day 5 parsing 2021-12-05 23:38:23 +01:00
kageru d0a72cb04e
Remove fnv dependency 2021-12-05 22:56:22 +01:00
kageru 6ae2840f80
Replace HashMap with Vec
again much faster
2021-12-05 22:10:29 +01:00
kageru fcfb68ea33
Preallocate day 5 hashmaps 2021-12-05 22:00:14 +01:00
kageru 45600f5dd1
Optimize day 5 2021-12-05 21:27:52 +01:00
kageru bcddb22135
Add day 5 2021-12-05 20:48:20 +01:00
kageru df68a385d8
Const-ify winning indices 2021-12-04 16:00:05 +01:00
kageru ea1339f018
Replace HashSet with Vec for more brrrrr 2021-12-04 13:38:17 +01:00
kageru f7efb54d21
Remove useless type alias 2021-12-04 13:31:26 +01:00
kageru 5b71f0740c
Enable benchmarks 2021-12-04 13:09:10 +01:00
kageru 6b868de832
Add day 4 2021-12-04 12:49:48 +01:00
kageru 964a84df45
Enable lto in benchmarks 2021-12-03 20:28:39 +01:00
kageru 70450dbcdc
Vec::retain does not go brrrr 2021-12-03 18:02:18 +01:00
kageru 9a03a4f499 Generalize input bench macro 2021-12-03 17:05:53 +01:00
kageru 5d90f44f2b Don’t use log2 to get around bit count 2021-12-03 15:24:26 +01:00
kageru 312f526345 Make day 3 not awful 2021-12-03 12:00:58 +01:00
kageru 8a60ce83f9
Add missing semicolon in day template 2021-12-03 07:02:58 +01:00
kageru 61ec05955a
Add day 3 (bad) 2021-12-03 07:01:36 +01:00
kageru e9a3ead7c2 Add DAY constant to each file for input reading 2021-12-02 10:31:23 +01:00
kageru 329be3f1c1
Add day 2 2021-12-02 06:13:01 +01:00
kageru b734f0c5af
Get alternative input file via env variable instead 2021-12-01 23:12:39 +01:00
kageru 731d7f5e33 Move imports into macros 2021-12-01 14:16:29 +01:00
kageru 250bad526c Revert "Remove env stuff from input reading"
I remember now. This was so I can `cargo run bigboy_input` without code changes
2021-12-01 14:12:36 +01:00
kageru 63c695608e Remove env stuff from input reading
No idea what last year me was thinking
2021-12-01 13:30:10 +01:00
kageru 85370a3b3b Use aocd to get daily input
see https://pypi.org/project/advent-of-code-data/
2021-12-01 09:54:28 +01:00
kageru a044e4cf1b
Refactor day 1
tuple_windows is terribly slow, wtf
2021-12-01 06:26:45 +01:00
kageru 94bf221efd
Add day 1
Part 2 is ugly. Better solution later when it’s not 6AM anymore
2021-12-01 06:19:33 +01:00
kageru 1c3ae8ec96 Minor rustfmt changes 2021-11-22 16:34:19 +01:00