Advent of code Python solutions and CLI tool.
2022
2022 | Puzzle Name | Part 1 | Part 2 |
---|---|---|---|
Day🎄01 | Calorie Counting | ⭐ | ⭐ |
Day🎄02 | Rock Paper Scissors | ⭐ | ⭐ |
Day🎄03 | Rucksack Reorganization | ⭐ | ⭐ |
Day🎄04 | Camp Cleanup | ⭐ | ⭐ |
Day🎄05 | Supply Stacks | ⭐ | ⭐ |
Day🎄06 | Tuning Trouble | ⭐ | ⭐ |
Day🎄07 | No Space Left On Device | ⭐ | ⭐ |
Day🎄08 | Treetop Tree House | ⭐ | ⭐ |
Day🎄09 | Rope Bridge | ⭐ | ⭐ |
Day🎄10 | Cathode-Ray Tube | ⭐ | ⭐ |
Day🎄11 | |||
Day🎄12 | |||
Day🎄13 | |||
Day🎄14 | |||
Day🎄15 | |||
Day🎄16 | |||
Day🎄17 | |||
Day🎄18 | |||
Day🎄19 | |||
Day🎄20 | |||
Day🎄21 | |||
Day🎄22 | |||
Day🎄23 | |||
Day🎄24 | |||
Day🎄25 |
2021
2021 | Puzzle Name | Part 1 | Part 2 |
---|---|---|---|
Day🎄01 | Sonar Sweep | ⭐ | ⭐ |
Day🎄02 | Dive! | ⭐ | ⭐ |
Day🎄03 | Binary Diagnostic | ⭐ | ⭐ |
Day🎄04 | Giant Squid | ⭐ | ⭐ |
Day🎄05 | Hydrothermal Venture | ⭐ | ⭐ |
Day🎄06 | Lanternfish | ⭐ | ⭐ |
Day🎄07 | |||
Day🎄08 | |||
Day🎄09 | |||
Day🎄10 | |||
Day🎄11 | |||
Day🎄12 | |||
Day🎄13 | |||
Day🎄14 | |||
Day🎄15 | |||
Day🎄16 | |||
Day🎄17 | |||
Day🎄18 | |||
Day🎄19 | |||
Day🎄20 | |||
Day🎄21 | |||
Day🎄22 | |||
Day🎄23 | |||
Day🎄24 | |||
Day🎄25 |
poetry install
poetry shell
$ aoc_run.py
2021.03
part-1
ƒ part1
0.190877 2640986
part-2
ƒ trie_part2
0.335679 6822109
aoc_run.py [-y year] [day] [part]
$ aoc_run.py all
2021.01
part-1
ƒ old_part1
0.007498 1655
ƒ part1
0.013324 1655
part-2
ƒ part2
0.012959 1683
2021.02
part-1
ƒ part1
0.005937 1561344
part-2
ƒ part2
0.007568 1848454425
2021.03
part-1
ƒ part1
0.190877 2640986
part-2
ƒ trie_part2
0.335679 6822109
mkdir -p ${year}/${day} && touch $_/{__init__.py,input}
save input data to input
files.
Create function name cast_input
to cast inputs.
# shared
def cast_input(inputs):
return [
x for x in inputs.split('\n')
]
Create function to solve puzzle -- function name ends with part1
or part2
def old_part1(inputs):
...
def part1(inputs):
...
def part2(inputs):
...