Here so that I can steadily and publicly work my way through the problems on Project Euler. See also my Beeminder goal.
Warning that this contains (obviously) spoilers for Project Euler. If you want the satisfaction of figuring out the problems on your own, you probably shouldn't be reading my answers!
Out of extreme laziness, I've added a short-cut to running the most recent solution. All you have
to do is run python ./run.py -l
from the main directory. This was also kind of
necessary to have a sane module structure.
To run a specific solution, use python ./run.py -n 1
(this will run solution 1). It will raise
an error if the requested solution doesn't exist. You don't have to worry about padding, that
takes care of itself.
To print out the time that a solution takes, add in the -t
flag on execution. It works using an
atexit
handler, so it can reliably print out times even for solutions which make use of exit()
to end execution the second they have the solution.
These are the solutions where I do something ridiculous (or clever) and are the ones I recommend checking out if you want to get a sense for the kind of programming I find interesting:
- 2
- 5
- 7
- 11
- 14
- 19
- 25
- 32
- 34
- 35
- 49
- 50
- 63
Occasionally, I try to come up with a quick and dirty approximate solution or show another way to do a problem. These can be interesting.
- 53