Commit Graph

36 Commits

Author SHA1 Message Date
c3480482f2 Implement an estimator function for day 10.
This bumps the speed tenfold.
2018-12-10 14:17:57 +01:00
c94555fda1 Implement day 10.
This implementation is stupid but it works.
2018-12-10 13:13:29 +01:00
63a5f81d8c Pre-allocate correct size. 2018-12-09 17:47:22 +01:00
c17be69910 Replace linkedlist with VecDeq.
Slightly slower but a lot cleaner.
2018-12-09 13:27:05 +01:00
9b287a0098 Prepare future scaffolding.
Also reformat the code, but that is nothing significant.
2018-12-09 13:02:54 +01:00
9b04e3b2c9 Implement day 9 part 2.
Linked lists in rust are a pain, but we got there.
2018-12-09 10:57:47 +01:00
e101dbd58c Move get_impl to crate. 2018-12-09 10:49:04 +01:00
1d5869af70 Implement day 9 part 1. 2018-12-09 10:47:21 +01:00
cf6f4f9e1e Better usage of clap. 2018-12-08 08:00:43 +01:00
880ae49be6 Split lib/bin. 2018-12-08 07:37:04 +01:00
c0052c8c24 Replace filter + map with filter_map. 2018-12-08 07:32:46 +01:00
7245cdf6b5 Implement day 08 in rust. 2018-12-08 07:15:27 +01:00
2b732c2285 Implement day 08, in python.
Attempted to reach the leaderboard. Failed miserably. Trying again soon
anyway.
2018-12-08 07:13:48 +01:00
0c07cbda24 Remove unused hashset. 2018-12-07 18:13:40 +01:00
3deb4ceb9a Replace backwards edges with dependency count. 2018-12-07 17:27:26 +01:00
eee42a70f4 Implement part 2.
This one got kind of messy at the end.
2018-12-07 15:58:53 +01:00
7b56d98853 Implement day 07 part 1. 2018-12-07 11:26:25 +01:00
1582b556d8 Refactor range of coordinates to own function. 2018-12-06 16:37:19 +01:00
c44ebaa238 Refactor grouping count into a trait. 2018-12-06 16:19:52 +01:00
d53100e591 Move sample and input files.
IDEA doesn't like files without extension.
2018-12-06 15:43:28 +01:00
f77e5adf2a Implement day 6. 2018-12-06 13:08:28 +01:00
bdea21d92b Day 06 inputs. 2018-12-06 11:10:51 +01:00
8fef472a58 Clarify bitmagic.
[skip ci]
2018-12-05 22:45:55 +01:00
f3d0297da5 Bithack optimizations, why not.
It saves a branch and a (possibly inlined) function call, but it also
halves the runtime.
2018-12-05 22:37:22 +01:00
f426e7067a More easily time the program. 2018-12-05 12:23:54 +01:00
28d38470a6 Move sample input to separate files. 2018-12-05 10:43:58 +01:00
3543351c20 Implement day 05.
This was a nice exercise in not allocating memory. Or at least it was,
for part 1.
2018-12-05 10:39:39 +01:00
3d68f20097 Slightly more efficient and compact code.
This version loops the input twice, first to build the claims, and then
to check whether they have been claimed more than once.
2018-12-05 09:53:42 +01:00
38db4487e3 Add missing input for day 3. 2018-12-04 15:16:50 +01:00
43eeacc686 Rework previous regex use. 2018-12-04 13:49:16 +01:00
1e51012d5e Implement day 4.
Nice code-reuse between 1 and 2. I'm not accustomed to this.
2018-12-04 13:41:45 +01:00
9a0f24d6bb Implement day 3.
Wasted way too much trying to do this cleverly.
2018-12-03 10:41:38 +01:00
fd5af9245b Implement day 2.
Part two was weird.
2018-12-02 10:36:45 +01:00
3bbe6a479a Implement day 1 2018.
We've started.
2018-12-01 11:03:48 +01:00
42d075f8f4 Update 2018 skeleton. 2018-11-12 13:18:16 +01:00
71eb13f52d Set up for AoC 2018. 2018-11-09 16:11:08 +01:00