Commit Graph

238 Commits

Author SHA1 Message Date
bert c3480482f2 Implement an estimator function for day 10.
This bumps the speed tenfold.
2018-12-10 14:17:57 +01:00
bert c94555fda1 Implement day 10.
This implementation is stupid but it works.
2018-12-10 13:13:29 +01:00
bert 63a5f81d8c Pre-allocate correct size. 2018-12-09 17:47:22 +01:00
bert c17be69910 Replace linkedlist with VecDeq.
Slightly slower but a lot cleaner.
2018-12-09 13:27:05 +01:00
bert 9b287a0098 Prepare future scaffolding.
Also reformat the code, but that is nothing significant.
2018-12-09 13:02:54 +01:00
bert 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
bert e101dbd58c Move get_impl to crate. 2018-12-09 10:49:04 +01:00
bert 1d5869af70 Implement day 9 part 1. 2018-12-09 10:47:21 +01:00
bert cf6f4f9e1e Better usage of clap. 2018-12-08 08:00:43 +01:00
bert 880ae49be6 Split lib/bin. 2018-12-08 07:37:04 +01:00
bert c0052c8c24 Replace filter + map with filter_map. 2018-12-08 07:32:46 +01:00
bert 7245cdf6b5 Implement day 08 in rust. 2018-12-08 07:15:27 +01:00
bert 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
bert 0c07cbda24 Remove unused hashset. 2018-12-07 18:13:40 +01:00
bert 3deb4ceb9a Replace backwards edges with dependency count. 2018-12-07 17:27:26 +01:00
bert eee42a70f4 Implement part 2.
This one got kind of messy at the end.
2018-12-07 15:58:53 +01:00
bert 7b56d98853 Implement day 07 part 1. 2018-12-07 11:26:25 +01:00
bert 1582b556d8 Refactor range of coordinates to own function. 2018-12-06 16:37:19 +01:00
bert c44ebaa238 Refactor grouping count into a trait. 2018-12-06 16:19:52 +01:00
bert d53100e591 Move sample and input files.
IDEA doesn't like files without extension.
2018-12-06 15:43:28 +01:00
bert f77e5adf2a Implement day 6. 2018-12-06 13:08:28 +01:00
bert bdea21d92b Day 06 inputs. 2018-12-06 11:10:51 +01:00
bert 8fef472a58 Clarify bitmagic.
[skip ci]
2018-12-05 22:45:55 +01:00
bert 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
bert f426e7067a More easily time the program. 2018-12-05 12:23:54 +01:00
bert f4cbb75e63 Attempt 3 to fix travis ignore. 2018-12-05 10:56:34 +01:00
bert a2f0026c18 Fix ignore of ubuntu rust. 2018-12-05 10:53:26 +01:00
bert aeb2faa6c9 Also test for Ubuntu's rust version. 2018-12-05 10:51:15 +01:00
bert 28d38470a6 Move sample input to separate files. 2018-12-05 10:43:58 +01:00
bert 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
bert 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
bert 38db4487e3 Add missing input for day 3. 2018-12-04 15:16:50 +01:00
bert 43eeacc686 Rework previous regex use. 2018-12-04 13:49:16 +01:00
bert 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
bert 9a0f24d6bb Implement day 3.
Wasted way too much trying to do this cleverly.
2018-12-03 10:41:38 +01:00
bert fd5af9245b Implement day 2.
Part two was weird.
2018-12-02 10:36:45 +01:00
bert e4e4432810 Add travis button. 2018-12-01 13:37:33 +01:00
bert 3bbe6a479a Implement day 1 2018.
We've started.
2018-12-01 11:03:48 +01:00
bert c41099d9d5 Implement day 11.
Whelp, this was really annoying.
2018-11-30 16:39:42 +01:00
bert 48db1dde39 Simplify the "find" operation. 2018-11-30 14:13:58 +01:00
bert 2ec8dddb66 Reimplement day 21. 2018-11-30 13:59:53 +01:00
bert b570821c8a Properly use the never type. 2018-11-29 17:01:01 +01:00
bert d02fd49bd6 Clean up tests 2018-11-29 16:58:51 +01:00
bert fccb7d28ad Fix some warnings. 2018-11-29 16:56:52 +01:00
bert 57b2981a15 Reimplement day 2. 2018-11-29 16:55:51 +01:00
bert 80328015d2 Implement day 25. 2018-11-29 16:31:57 +01:00
bert a104356b6f Slightly nicer day parsing. 2018-11-22 16:39:53 +01:00
bert 8d1baf1e8d CI building for more rust versions. 2018-11-22 16:26:17 +01:00
bert 37f9e696bc Implement day 24. 2018-11-22 15:59:51 +01:00
bert b35d785d69 Implement day 23.
Could use some optimization, but it works.
2018-11-14 12:50:53 +01:00