From a6692bc7801f6022ba8164ae3638b6e58cfb3079 Mon Sep 17 00:00:00 2001 From: setop Date: Mon, 11 Dec 2023 12:36:22 +0100 Subject: [PATCH] day 11, 1 is also 2-1 --- d11/run.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 d11/run.py diff --git a/d11/run.py b/d11/run.py new file mode 100644 index 0000000..f75e376 --- /dev/null +++ b/d11/run.py @@ -0,0 +1,33 @@ +import sys +from itertools import product as Prod + +I = sys.stdin.read().splitlines() # for codon type inference +L = [list(l) for l in I] +H = len(L) +W = len(L[0]) +RD = {y for y in range(W) if "".join(L[y]).find("#")==-1} +CD = {x for x in range(H) if all(L[y][x] == '.' for y in range(W))} + +G = [(x,y) +for y in range(W) + for x in range(H) + if L[y][x] == '#'] + +# expantion factor, 2 for part 1, 1E6 for part 2 +X = int(float(sys.argv[1])) # float to parse scientific form, int for codon + +def exp(a:int,b:int,S:set[int]) -> int: + if a > b: + b, a = a, b + return sum(1 for s in S if a