From e688c2b674fc7ad6a964a48df379e5abd01843a7 Mon Sep 17 00:00:00 2001 From: Tom van der Lee Date: Mon, 4 Dec 2023 10:40:34 +0100 Subject: Day4 --- ...__init__ (conflicted copy 2023-12-03 150713).py | 40 ---------------------- day2/__init__.py | 30 ++++++---------- 2 files changed, 10 insertions(+), 60 deletions(-) delete mode 100644 day2/__init__ (conflicted copy 2023-12-03 150713).py (limited to 'day2') diff --git a/day2/__init__ (conflicted copy 2023-12-03 150713).py b/day2/__init__ (conflicted copy 2023-12-03 150713).py deleted file mode 100644 index 1191e0f..0000000 --- a/day2/__init__ (conflicted copy 2023-12-03 150713).py +++ /dev/null @@ -1,40 +0,0 @@ -# -*- coding: utf-8 -*- -from abc import ABC -from enum import Enum -from typing import Iterator - -from aoc import BaseAssignment, I, T - - -class Color(Enum): - red = 'red' - green = 'green' - blue = 'blue' - -ColorCount = tuple[int, Color] - -class Assignment(BaseAssignment, ABC): - def parse_item(self, item: str) -> list[tuple[ColorCount, ...]]: - _, items = item.split(': ') - - return [ - tuple( - tuple(( - int(_.split(' ')[0]), - Color(_.split(' ')[1]) - )) - for _ in pair.split(', ') - ) - for pair in items.split('; ') - ] - - -class AssignmentOne(Assignment): - example_result = 8 - def run(self, input: Iterator[I]) -> T: - for i in input: - print(i) - - -class AssignmentTwo(Assignment): - pass diff --git a/day2/__init__.py b/day2/__init__.py index 0afc441..c452878 100644 --- a/day2/__init__.py +++ b/day2/__init__.py @@ -8,25 +8,24 @@ from aoc import BaseAssignment, I, T class Color(Enum): - red = 'red' - green = 'green' - blue = 'blue' + red = "red" + green = "green" + blue = "blue" + ColorCount = tuple[int, Color] + class Assignment(BaseAssignment, ABC): def parse_item(self, item: str) -> list[tuple[ColorCount, ...]]: - _, items = item.split(': ') + _, items = item.split(": ") return [ tuple( - ColorCount(( - int(_.split(' ')[0]), - Color(_.split(' ')[1]) - )) - for _ in pair.split(', ') + ColorCount((int(_.split(" ")[0]), Color(_.split(" ")[1]))) + for _ in pair.split(", ") ) - for pair in items.split('; ') + for pair in items.split("; ") ] @@ -75,15 +74,6 @@ class AssignmentTwo(Assignment): for game in input: counts = self.get_least_numbers(game) - powers.append( - reduce( - lambda total, item: total * item, - counts.values(), - 1 - ) - ) + powers.append(reduce(lambda total, item: total * item, counts.values(), 1)) return sum(powers) - - - -- cgit v1.2.3