Day 1 completed

This commit is contained in:
2024-12-01 15:02:34 +01:00
commit 5e782cf3d7
6 changed files with 59 additions and 0 deletions

11
day1/common.py Normal file
View File

@@ -0,0 +1,11 @@
def parse(filename: str) -> list[list[int]]:
elves = []
elf = []
with open(filename, "r") as f:
while line := f.readline():
if line == "\n":
elves.append(elf)
elf = []
else:
elf.append(int(line[:-1]))
return elves

14
day1/part1.py Normal file
View File

@@ -0,0 +1,14 @@
from common import parse
def solve(elves: list[list[int]]) -> int:
return (sorted(map(sum, elves), reverse=True))[0]
def main():
elves = parse("input")
print(solve(elves))
if __name__ == "__main__":
main()

14
day1/part2.py Normal file
View File

@@ -0,0 +1,14 @@
from common import parse
def solve(elves: list[list[int]]) -> int:
return sum(list(sorted(map(sum, elves), reverse=True))[0:3])
def main():
elves = parse("input")
print(solve(elves))
if __name__ == "__main__":
main()