From efb3a428b44a937c1fff723cc365ce11d8ea01fd Mon Sep 17 00:00:00 2001 From: Stegallo Date: Sat, 30 Nov 2024 21:28:12 -0800 Subject: [PATCH 1/2] day1 --- y_2024/day1.py | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/y_2024/day1.py b/y_2024/day1.py index 6154f2c..7208430 100644 --- a/y_2024/day1.py +++ b/y_2024/day1.py @@ -1,3 +1,4 @@ +from collections import Counter from typing import Optional from pydantic.dataclasses import dataclass @@ -8,10 +9,10 @@ @dataclass class Row: original: str - processed: Optional[str] = None + processed: Optional[list] = None def __post_init__(self) -> None: - self.processed = "" # self.original + self.processed = self.original.split() class Day(AoCDay): @@ -20,13 +21,20 @@ def __init__(self, test=0): def _preprocess_input(self): # self.__input_data = [[int(i) for i in chunk] for chunk in self._input_data] - print(f"{self._input_data=}") - self.__input_data = [Row(i) for i in self._input_data[0]] + # print(f"{self._input_data=}") + parsed_input = [Row(i) for i in self._input_data[0]] + self.__first_list = [int(i.processed[0]) for i in parsed_input] + self.__second_list = [int(i.processed[1]) for i in parsed_input] def _calculate_1(self): - for x in self.__input_data: - print(f"{x}") - return 0 + result = 0 + for x, y in zip(sorted(self.__first_list), sorted(self.__second_list)): + result += abs(y - x) + return result def _calculate_2(self): - return 0 + result = 0 + c = Counter(self.__second_list) + for x in self.__first_list: + result += x * c.get(x, 0) + return result From 4d25878b7b7e9e1caf253023a54fa35a7b9672b6 Mon Sep 17 00:00:00 2001 From: Stegallo Date: Sun, 1 Dec 2024 05:36:14 +0000 Subject: [PATCH 2/2] format code with black --- y_2023/day6.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/y_2023/day6.py b/y_2023/day6.py index 0a2d7f5..ba5ce8b 100644 --- a/y_2023/day6.py +++ b/y_2023/day6.py @@ -21,12 +21,10 @@ def size(self): return len(self.sequence) -class Time(Placeholder): - ... +class Time(Placeholder): ... -class Distance(Placeholder): - ... +class Distance(Placeholder): ... class Day(AoCDay):