Commit Graph

500 Commits

Author SHA1 Message Date
kageru 1159d3b6e4
Make reduce return new Node
This is a little slower, but I much prefer how it looks
2021-12-18 17:49:55 +01:00
kageru 8333c88189
Add day 18 part 2 2021-12-18 17:46:46 +01:00
kageru 7cbbd03e0f
finish day 18 part 1 2021-12-18 17:37:31 +01:00
kageru 68cade10ac
Day 18: add split and tests 2021-12-18 17:06:34 +01:00
kageru 35e85c9737
Add day 18 parsing + exploding 2021-12-18 16:18:25 +01:00
kageru 79ab35a23e
Use Vec::retain for day 3
The performance issues I reported have since been fixed. Rejoice.
2021-12-17 22:08:31 +01:00
kageru 95e4a6f8cc
Day 17: no longer hardcode upper search bounds 2021-12-17 21:52:42 +01:00
kageru 66bc3c6d42
More day 17 optimizations 2021-12-17 17:32:35 +01:00
kageru 36ffc1cf00 Remove useless destructuring 2021-12-17 14:06:31 +01:00
kageru 10454bd621 Day 17 early exit earlier 2021-12-17 13:26:10 +01:00
kageru 4796950fdf better bounds 2021-12-17 12:55:18 +01:00
kageru 14d3e22da6 Day 17 more FP 2021-12-17 12:55:18 +01:00
kageru 5d2035e161 Add day 17
brute force is best force
2021-12-17 12:55:18 +01:00
kageru b13bb26752
Remove unneeded bitshift 2021-12-16 23:12:44 +01:00
kageru 07539273dc Add day 15 part 1 2021-12-15 18:07:19 +01:00
kageru b38c53b886 Add day 14 2021-12-14 12:10:45 +01:00
kageru 74925b973d Slightly optimize string generation 2021-12-13 11:43:08 +01:00
kageru 310730482a Properly rotate day 13 part 2 2021-12-13 11:25:31 +01:00
kageru 4904505f69 Add day 13 2021-12-13 11:12:02 +01:00
kageru 4da3dc4a8b
Day 12: clone a little less 2021-12-12 13:19:21 +01:00
kageru 1e03a430b9
Add day 12 part 2 2021-12-12 13:05:38 +01:00
kageru 06c8b775fa
Add day 12 part 1 2021-12-12 12:41:37 +01:00
kageru 8ccab04d6f
Extract some grid functionality into trait 2021-12-11 22:54:57 +01:00
kageru e668c96185
Day 11 cleanup 2021-12-11 13:36:15 +01:00
kageru c6b1ec262f
Add day 11
and the entire grid library from last year
2021-12-11 13:11:34 +01:00
kageru a06c73a488
Add grid module from 2020 2021-12-11 12:03:13 +01:00
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