advent-of-code/2015-python/aoc.py
Anders Englöf Ytterström 5a5e843129
2015, day 16-25 (first completed calendar!) (#11)
* Solve 2015:16 "Aunt Sue"

* Make 2023:08 future compatible

Code used to work with another version of python.

* Solve 2015:17 "No such Thing as Too much"

* Solve 2015:18 "Like a GIF For Your Yard"

Also solve 2015:06 just in case, was just a ref
in the end.

* Solve 2015:19 "Medicine for Rudolph"

* Solve 2015:20 "Infinite Elves and Infinite Houses"

* Solve 2023:21 "RPG Simulator 20XX"

* Solve 2015:22 "Wizard Simulator 20XX"

* Solve 2015:23 "Opening the Turing Lock"

* Solve 2015:25 "Let it Snow"

Wrote p2rc and rc2p just for academic purposes.
Puzzles could be solved anyway.

* Solve 2015:24 "Hangs in the Balance"

---------

Co-authored-by: Anders Englöf Ytterström <anders@playmaker.ai>
2023-12-19 14:24:28 +01:00

75 lines
1.5 KiB
Python

import sys
year = 2015
try:
_, day_no, name = sys.argv
except ValueError:
day_no = None
name = None
print(
f"\nAdvent of Code {year}" "\n###################" "\n\nby Anders Englöf Ytterström"
)
if day_no and name:
print(f"\n- creating solutions/day_{day_no.zfill(2)}.py")
with open("solutions/day_{}.py".format(day_no.zfill(2)), "w") as s:
s.write(
"""
from solutions import BaseSolution
class Solution(BaseSolution):
input_file = "{day_no}.txt"
def __str__(self):
return "Day {day}: {name}"
def solve(self, pi):
return pi
def solve_again(self, pi):
return pi
def parse_input(self, data):
return data.strip()
if __name__ == "__main__":
solution = Solution()
# solution.show_results()
dummy = \"\"\"
replace me
\"\"\".strip()
solution.solve(dummy)
# solution.solve_again(dummy)
""".strip().format(day=day_no, day_no=day_no.zfill(2), name=name)
+ "\n"
)
print(
f"""
Done! start coding.
Puzzle link:
https://adventofcode.com/{year}/day/{day_no}
Puzzle input (copy and paste to inputs/{day_no.zfill(2)}.txt):
https://adventofcode.com/{year}/day/{day_no}/input
"""
)
exit(0)
for i in [str(n).zfill(2) for n in range(1, 26)]:
try:
solution = __import__(
"solutions.day_{}".format(i), globals(), locals(), ["Solution"], 0
).Solution()
solution.show_results()
except IOError:
pass
except ImportError:
pass