🌟
🎄
🎄🎄
🎄🎄🎄
🎄🎄🎄🎄
🎄🎄🎄🎄🎄
🎁🎁🎁
These are proposed solutions for the Advent of Code 2018.
The solutions are automatically tested with travis.
use ./aoc script
usage: aoc <command> [<args>]
aoc commands are:
run Runs submissions
create Creates a new submission
config Configures user's parameters
./aoc run~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Running submissions for day 04:
* part 2:
---------------------------------------------------
Avg over all inputs
---------------------------------------------------
---------- ---------- ----------- ---
silvestre 78452 1.99 ms py
degemer 43695 2.39 ms py
jules 23037 2.49 ms py
david 36371 2.94 ms py
thomas 9763 2.97 ms py
ayoub 136461 5.85 ms cpp
evqna 49137 6.65 ms cpp
badouralix 51232 7.26 ms go
tpxp 41668 133.63 ms rb
---------- ---------- ----------- ---./aoc run -d 1 -d 2 -p 1 -a ayoub -a david~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Running submissions for day 01:
* part 1:
---------------------------------------------------
Avg over all inputs
---------------------------------------------------
----- ------- ----------- ---
david 543 0.46 ms py
ayoub 445 4.94 ms cpp
----- ------- ----------- ---
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Running submissions for day 02:
* part 1:
---------------------------------------------------
Avg over all inputs
---------------------------------------------------
----- -------- ----------- ---
david 5658 1.22 ms py
ayoub 6448 4.84 ms cpp
----- -------- ----------- ---You can use -r to run each submission on it's own input, or -e to print non-aggregated results.
see ./aoc run -h for full arguments description.
For now we support c, c++, java, javascript, go, python 3 (+ cython), ruby, rust (stable) and bash scripts.
You can use ./aoc create tool to create a new empty submission:
usage: aoc create [-h] [-a AUTHOR] [-d DAY] [-p PART]
[-l {c,cpp,go,java,js,py,pyx,rb,rs,sh}]
Create a new submission
optional arguments:
-a AUTHOR, --author AUTHOR
submission author
-d DAY, --day DAY problem day
-p PART, --part PART problem part
-l {c,cpp,go,java,js,py,pyx,rb,rs,sh}, --language {c,cpp,go,java,js,py,pyx,rb,rs,sh}
submission language
you can also use ./aoc config to setup your local profile
usage: aoc config [-h] username {c,cpp,go,java,js,py,pyx,rb,rs,sh}
Configures user parameters
positional arguments:
username prefered username
{c,cpp,go,java,js,py,pyx,rb,rs,sh}
prefered programming language
If you don't use create.py tool you should follow this convention:
day-[number]/part-[number]/[username].py # your submission code
day-[number]/input/[username].txt # your input fileYour submission code should inherit from the SubmissionPy class from runners.python module:
from tool.runners.python import SubmissionPy
class MyAwesomeSubmission(SubmissionPy):
def run(self, s):
# :param s: input in string format
# :return: solution flag
passYou can add other functions & modules if you need to. Any external dependency should be added to requirements.txt.
Once you tested your solution you can submit it by making a PR.