Go to file
Jonathan Chan 828efdd7a8 Update README.md 2017-12-18 23:46:02 -08:00
.gitignore Day 17 - it's a lot faster in Javascript... 2017-12-16 23:44:08 -08:00
01.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
01.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
02.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
02.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
03.hs Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
04.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
04.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
05.hs Day 5 - added some strict evaluation for performance 2017-12-17 16:10:39 -08:00
05.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
05_alt.hs Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
06.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
06.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
07.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
07.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
07_cumulate.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
07_tree.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
08.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
08.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
09.hs Fixed input imports due to 0 prefix for days 01 to 09. 2017-12-17 16:11:13 -08:00
09.txt Prepended single-digit files with 0s for nice ordering. 2017-12-12 09:29:13 -08:00
10.hs Day 10 - condensed a lot of functions and used normal lists instead of Seq 2017-12-12 09:29:07 -08:00
10.txt Day 10 2017-12-12 09:29:07 -08:00
11.hs Minor refactorings of days 3, 4, 5, 6, 7, 9, 11, and removed alternate solution (i.e. the original one) for 9. 2017-12-12 09:29:10 -08:00
11.txt Day 11 2017-12-12 09:29:07 -08:00
12.hs Day 12 - removed old solution in favour of graph-based solution 2017-12-16 11:12:40 -08:00
12.txt Day 12, plus some edits to days 1 and 2 2017-12-12 09:29:10 -08:00
13.hs Day 13 2017-12-12 22:59:14 -08:00
13.txt Day 13 2017-12-12 22:59:14 -08:00
14.hs Day 14 - minor refactoring 2017-12-18 02:02:47 -08:00
15.hs Day 15 - removed old solution in favour of faster strict solution 2017-12-16 11:14:01 -08:00
16.hs Day 16 - finally! 2017-12-17 11:55:59 -08:00
16.txt Day 16 - how to do part 2 without taking 3 years �� 2017-12-16 11:09:58 -08:00
17.hs Day 17 - sped up to ~6s using strict recursion! 2017-12-17 15:13:38 -08:00
17.js Day 17 - it's a lot faster in Javascript... 2017-12-16 23:44:08 -08:00
18.txt Day 18 - beginnings of a solution, but it's late and I need to sleep 2017-12-18 02:02:47 -08:00
18a.hs Day 18, part 1 - minor refactoring 2017-12-18 22:01:29 -08:00
18b.hs Day 18, part 2 - now with record syntax! 2017-12-18 21:58:37 -08:00
19.hs Day 19 2017-12-18 23:45:10 -08:00
19.txt Day 19 2017-12-18 23:45:10 -08:00
README.md Update README.md 2017-12-18 23:46:02 -08:00

README.md

Advent of Code 2017

Hopefully most of these solutions are fairly self-explanatory. I'll write longer-length explanations for harder questions.

Posts

Day 3: Spiral Memory (problem description)

Runtimes

These are the runtimes of only one trial but the variances are fairly small and the focus is on the differences in runtime among the different solutions to see which have comparatively worse performance.

Day Runtime (s) With -O2
01 0.044
02 0.078
03 0.074
04 0.082
05 16.833 10.975
06 0.398
07 0.148
08 0.137
09 0.102
10 0.340
11 0.119
12 0.168
13 2.136 0.503
14 8.211 5.206
15 62.242
16 0.462
17 6.753 1.865
18 0.118
19 0.026

Problems that should be optimized further: 15

Problems that could use some work: 05, 14

Problems that are good enough with optimizations: 17, 13