Commit Graph

608 Commits

Author SHA1 Message Date
eff0cb9f8c Implement day 14. 2020-12-14 20:06:02 +01:00
fe9dfd163c Implementation day 13 2020-12-13 08:22:35 +01:00
ea839af850 Implementation day 12 2020-12-12 08:00:35 +01:00
7649d628e7 Implemention day 11 2020-12-11 08:20:27 +01:00
190a7e7423 Prepare remaining days. 2020-12-10 21:10:14 +01:00
e05cb5c9f0 Implementation day 10 2020-12-10 09:15:32 +01:00
e2bf38ceee Avoid copying in part 2 2020-12-09 19:48:05 +01:00
033a3ef512 Implementation day 9. 2020-12-09 09:08:42 +01:00
e5edecba46 Implementation day 8 2020-12-08 20:30:31 +01:00
10f123bf04 Implementation day 7 2020-12-07 09:35:41 +01:00
4cb74e742b Fix Travis caching build artifacts 2020-12-06 09:30:48 +01:00
0bf021045c Rewrite using iterators
This improves codegen for part 1 considerably.
2020-12-06 09:26:17 +01:00
ecade93f0f Implementation day 6 2020-12-06 08:57:22 +01:00
5348e92f8a Add instrumentation for profiling 2020-12-05 14:25:52 +01:00
26c7d67077 Avoid allocations when parsing strings by line 2020-12-05 13:48:10 +01:00
b38a1ddff9 Prepare day 6 2020-12-05 13:16:14 +01:00
77f20fb368 Off-by-one error 2020-12-05 11:05:41 +01:00
a382477008 Implementation day 5 2020-12-05 08:19:24 +01:00
711caf2ed0 Implementation day 3 2020-12-04 09:19:05 +01:00
fa54d448ed Prepare day 4 2020-12-03 19:55:55 +01:00
fc0a1a43af Simplify read_char_grid 2020-12-03 19:39:45 +01:00
eedbe874bd Implementation day 3 2020-12-03 08:53:49 +01:00
1df2a6f54d Prepare day 3 2020-12-02 22:39:40 +01:00
b25a4bc1ba Use macros for tests 2020-12-02 22:37:19 +01:00
f8adae8dc0 Re-enable Travis CI 2020-12-02 21:49:11 +01:00
4ec98c0cf1 Add README link for 2020 as requested 2020-12-02 21:21:56 +01:00
877bf933d0 Add automated download script 2020-12-02 21:20:12 +01:00
2d58f0eb23 Rewrite day 2 with fewer allocations 2020-12-02 18:38:47 +01:00
777cac6346 Implementation day 2. 2020-12-02 09:27:15 +01:00
8acce5c137 Implementation day 1 2020-12-01 08:50:39 +01:00
cbbee3a01f Initial skeleton code for 2020 2020-11-28 23:43:15 +01:00
9726769253 Implement day 22 part 2 incorrectly. 2019-12-28 16:06:10 +01:00
c98a0bdcfd Optimization: only simulate the relevant position. 2019-12-28 13:58:52 +01:00
649ced1515 Split input reading from algorithm. 2019-12-25 17:33:18 +01:00
40547cf5f8 Brute-force solution to day 22 part 1. 2019-12-25 17:18:44 +01:00
c7881c47b9 Implement day 20 part 2. 2019-12-25 17:00:16 +01:00
17efdb61c4 Improve day 20 part 1.
Now use an implicit graph of nodes. This allows us to use the same graph information for part 2. Spoilers.
2019-12-25 17:00:16 +01:00
6a6bbac509 Add tests for day 20 part 1. 2019-12-25 17:00:16 +01:00
28da5c7e9b Implement day 20 part 1. 2019-12-25 17:00:16 +01:00
6211990235 Implement day 24 part 2. 2019-12-24 18:45:12 +01:00
3c682b31e9 Implement day 24 part 1. 2019-12-24 16:38:36 +01:00
3da0605201 Speed up day 18 part 2. 2019-12-23 23:48:53 +01:00
8bbd9705a6 Optimize day 18 a bit. 2019-12-23 23:36:33 +01:00
2a75d1be4c Initial work on day 22. 2019-12-23 22:48:54 +01:00
8f112aa91f Implement day 18 part 2.
It's really slow so I'll have to improve it.
2019-12-23 22:25:21 +01:00
06ca806927 Implement day 18 part 1. 2019-12-23 20:32:22 +01:00
ebb85b2257 Work on an actual algorithm for day 17. 2019-12-23 18:45:16 +01:00
46b2ae6ef0 Implement starting point for day 10. 2019-12-23 18:36:48 +01:00
daf0d86f37 Solution to day 21. 2019-12-23 18:35:31 +01:00
51611f406c Consistent input naming. 2019-12-20 07:50:11 +01:00