From 3ac99f409ae6545e2f4fece4d9397d28d35b279b Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Thu, 2 Dec 2021 13:58:27 +0100 Subject: Set file encoding when reading --- 2020/14/puzzle-1.py | 14 +++++++------- 2020/14/puzzle-2.py | 22 +++++++++++----------- 2 files changed, 18 insertions(+), 18 deletions(-) (limited to '2020/14') diff --git a/2020/14/puzzle-1.py b/2020/14/puzzle-1.py index f102316..81f9136 100755 --- a/2020/14/puzzle-1.py +++ b/2020/14/puzzle-1.py @@ -18,19 +18,19 @@ def bitmask(mask: str, num: int) -> int: def main() -> None: - with open("input", "r") as f: + with open("input", "r", encoding="utf-8") as f: lines = f.read().splitlines() mem: dict[str, int] = {} mask = "" for line in lines: - line = line.split(" ") - if line[0] == "mask": - mask = line[2] - else: - mem[line[0][4:-1]] = bitmask(mask, int(line[2])) + match line.split(" "): + case ["mask", _, mask]: + mask = mask + case [addr, _, val]: + mem[addr[4:-1]] = bitmask(mask, int(val)) - print(sum(mem[val] for val in mem)) + print(sum(mem.values())) if __name__ == "__main__": diff --git a/2020/14/puzzle-2.py b/2020/14/puzzle-2.py index 45fb6ad..726da0a 100755 --- a/2020/14/puzzle-2.py +++ b/2020/14/puzzle-2.py @@ -26,22 +26,22 @@ def bitmask(mask: str, num: int) -> tuple[int, ...]: def main() -> None: - with open("input", "r") as f: + with open("input", "r", encoding="utf-8") as f: lines = f.read().splitlines() mem: dict[str, int] = {} mask = "" for line in lines: - line = line.split(" ") - if line[0] == "mask": - mask = line[2] - else: - address = line[0][4:-1] - addresses = bitmask(mask, int(address)) - for a in addresses: - mem[a] = int(line[2]) - - print(sum(mem[val] for val in mem)) + match line.split(" "): + case ["mask", _, mask]: + mask = mask + case [addr, _, val]: + address = addr[4:-1] + addresses = bitmask(mask, int(address)) + for a in addresses: + mem[a] = int(val) + + print(sum(mem.values())) if __name__ == "__main__": -- cgit v1.2.3