Commit Graph

329 Commits

Author SHA1 Message Date
06c8b775fa
Add day 12 part 1 2021-12-12 12:41:37 +01:00
8ccab04d6f
Extract some grid functionality into trait 2021-12-11 22:54:57 +01:00
e668c96185
Day 11 cleanup 2021-12-11 13:36:15 +01:00
c6b1ec262f
Add day 11
and the entire grid library from last year
2021-12-11 13:11:34 +01:00
a06c73a488
Add grid module from 2020 2021-12-11 12:03:13 +01:00
aa33a74bc7
Simplify match 2021-12-10 22:51:24 +01:00
6d9fbe0edf Refactor day 10 2021-12-10 15:09:09 +01:00
2103005872 Add day 10
Ugly for now
2021-12-10 14:10:23 +01:00
ed3b0b579c
Try 9/2 2021-12-09 21:14:08 +01:00
96877c6359 Day 9 simplify neighbors 2021-12-09 11:10:21 +01:00
2a1c7ee382 Add day 9 part 1 2021-12-09 10:46:49 +01:00
48a392325f
Day 8: more optimizations
This is getting ridiculous, but I couldn’t sleep
2021-12-09 00:47:30 +01:00
30c8e0e1ff
Add unchecked string parsing
Saves ~5-10% in parsing benchmarks
2021-12-09 00:26:00 +01:00
9db1906760
Day 8: No longer brute force anything 2021-12-08 20:49:05 +01:00
188dd576a9
Bitmagic 2021-12-08 20:10:16 +01:00
a1f6eb888c Day 8 Refactoring III
Completely remove SevenSegmentDisplay type
2021-12-08 16:54:07 +01:00
83419cbdf3 Day 8 Refactoring II
Unbloating the parsed type
2021-12-08 14:07:44 +01:00
0b77540d9d Day 8 Refactoring I
Parsing and variable names
2021-12-08 14:07:14 +01:00
2ba51b2208 Add day 8 2021-12-08 13:42:35 +01:00
cfb1e87465
Make 7/1 faster 2021-12-07 19:43:24 +01:00
744aa2fc72 Simplify day 7 2021-12-07 14:06:09 +01:00
413339cdb8 Add day 7 2021-12-07 11:57:45 +01:00
728b95b9e1 Death to imperative programming! 2021-12-06 14:10:46 +01:00
fcab7acc74 Slightly optimize input parsing 2021-12-06 13:46:34 +01:00
c073e2f906 Make day 6 better 2021-12-06 13:05:57 +01:00
fc60409b42 Add day 6 part 2 2021-12-06 12:26:12 +01:00
0256625608 Add day 6 part 1 2021-12-06 11:01:23 +01:00
78de4f1d46
Add macro for static day 5 parsing 2021-12-05 23:38:23 +01:00
d0a72cb04e
Remove fnv dependency 2021-12-05 22:56:22 +01:00
6ae2840f80
Replace HashMap with Vec
again much faster
2021-12-05 22:10:29 +01:00
fcfb68ea33
Preallocate day 5 hashmaps 2021-12-05 22:00:14 +01:00
45600f5dd1
Optimize day 5 2021-12-05 21:27:52 +01:00
bcddb22135
Add day 5 2021-12-05 20:48:20 +01:00
df68a385d8
Const-ify winning indices 2021-12-04 16:00:05 +01:00
ea1339f018
Replace HashSet with Vec for more brrrrr 2021-12-04 13:38:17 +01:00
f7efb54d21
Remove useless type alias 2021-12-04 13:31:26 +01:00
5b71f0740c
Enable benchmarks 2021-12-04 13:09:10 +01:00
6b868de832
Add day 4 2021-12-04 12:49:48 +01:00
964a84df45
Enable lto in benchmarks 2021-12-03 20:28:39 +01:00
70450dbcdc
Vec::retain does not go brrrr 2021-12-03 18:02:18 +01:00
9a03a4f499 Generalize input bench macro 2021-12-03 17:05:53 +01:00
5d90f44f2b Don’t use log2 to get around bit count 2021-12-03 15:24:26 +01:00
312f526345 Make day 3 not awful 2021-12-03 12:00:58 +01:00
8a60ce83f9
Add missing semicolon in day template 2021-12-03 07:02:58 +01:00
61ec05955a
Add day 3 (bad) 2021-12-03 07:01:36 +01:00
e9a3ead7c2 Add DAY constant to each file for input reading 2021-12-02 10:31:23 +01:00
329be3f1c1
Add day 2 2021-12-02 06:13:01 +01:00
b734f0c5af
Get alternative input file via env variable instead 2021-12-01 23:12:39 +01:00
731d7f5e33 Move imports into macros 2021-12-01 14:16:29 +01:00
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