I have also made a discord bot to show the leaderboard, if anyone is interested : https://github.com/DylanMeeus/Advent_Of_Code_Bot
Advent of Code 2018
81–90 of 101 posts
Re: Advent of Code 2018
#82Going to do this in Scala, if anybody wants to join my email is in my bio.
Re: Advent of Code 2018
#83If you participated in previous editions, how much time did you have to dedicate each day, on average? I've joined similar initiatives in the past, but I always end up giving up because of not being able to keep up the pace of sitting down _every_ day. Yeah one could just solve the problems with some offset delay, or just skip all missed problems, but then it's not fun any more, and I'd wager that the same could be d…
Re: Advent of Code 2018
#84I dig the little Easter egg. I don't remember that in previous years.
Re: Advent of Code 2018
#85People have been interested in this in the past so I'll post it again: Peter Norvig's satisfying Jupyter notebook solutions from AoC 2016[0]. [0] http://nbviewer.jupyter.org/url/norvig.com/ipython/Advent%20...
[0] https://github.com/norvig/pytudes/blob/master/ipynb/Advent%2...
Re: Advent of Code 2018
#86I have been pretty interested in ReasonML / Ocaml lately, these puzzles are a great oppertunity to get to grips with the basics of a language.
Shamelessly plug, I created a repository for storing solution written on Sketch.sh here: https://github.com/Sketch-sh/advent-of-code-2018
Re: Advent of Code 2018
#87If you participated in previous editions, how much time did you have to dedicate each day, on average? I've joined similar initiatives in the past, but I always end up giving up because of not being able to keep up the pace of sitting down _every_ day. Yeah one could just solve the problems with some offset delay, or just skip all missed problems, but then it's not fun any more, and I'd wager that the same could be d…
But, I'm slow, and I try to do it TDDish in a language I'm not so familiar with so there's that.
This year my aim is to finish all the problems by Nov 30th 2019 :) Even when I try go _as fast as I can_ (in ruby) I've only ever managed about 120th on the leaderboard. Now I just aim to have fun and learn as much as I can.
But to answer your actual question, if they're easy, within half an hour or less, hard ones, anywhere up to 5 or 6 hours (I'm slow, I'm OK with that :)
Re: Advent of Code 2018
#88Looks like a cool project. I'm just curious about why this is billed as an Advent calendar, when really the only thing it has in common with an Advent calendar is that it terminates on Christmas. Is there anything about it that has anything to do with Advent, i.e. the Christian liturgical season that precedes Christmas?
Re: Advent of Code 2018
#89If you participated in previous editions, how much time did you have to dedicate each day, on average? I've joined similar initiatives in the past, but I always end up giving up because of not being able to keep up the pace of sitting down _every_ day. Yeah one could just solve the problems with some offset delay, or just skip all missed problems, but then it's not fun any more, and I'd wager that the same could be d…
I still haven't solved all of 2017's, "some offset delay" indeed. I might not have solved all of 2016's for that matter - the closer it gets to Christmas, the less likely I am to touch a computer at all.
Re: Advent of Code 2018
#90If you participated in previous editions, how much time did you have to dedicate each day, on average? I've joined similar initiatives in the past, but I always end up giving up because of not being able to keep up the pace of sitting down _every_ day. Yeah one could just solve the problems with some offset delay, or just skip all missed problems, but then it's not fun any more, and I'd wager that the same could be d…
Probably 15-20 minutes a day on average (edit: yep, my data from 2017 supports that), but with large spikes (and the average goes up towards the end of the month). (But I'm pretty quick — I was on the global leaderboard the last few years in a row.)
Edit: real numbers from 2017:
Excluding outliers and days I was absent at the start of the challenge: average 12.5 minutes for part 1 and 19.5 minutes for part 2.
Only excluding days where I was absent at the start of the challenge: average 16.25 minutes for part 1 and 23 minutes for part 2.
Edit2: 2016 was similar: 19-25 minutes excluding outliers, 23-35 minutes excluding days I missed the puzzle release by several hours.
If you're going for speed / leaderboard, Python is usually your best bet. Suggested libraries to be familiar with include:
stdlib: binascii, collections (especially defaultdict), fractions (gcd), itertools (combinations, combinations_with_replacement, permutations, product, izip, chain), md5, re, os/sys.
Non-std: networkx (graphs and shortest path), sympy (isprime()), numpy (efficient representation of large arrays).
It's useful to have a canned exhaustive tree search prepared (breadth/depth/"best"-first search).
You can use complex numbers to represent 2-dimensional coordinates and direction; turning the unit vector left and right involves multiplying by 1j and -1j, respectively, and movement is addition.
Oh, and sometimes pypy is faster enough that it can make a Python solution viable where otherwise it would have been too slow.