From 8856fe38f85b0fd6e1db848cde436ac1ac65b568 Mon Sep 17 00:00:00 2001 From: Thom Dickson Date: Sat, 4 Dec 2021 22:39:04 -0500 Subject: [PATCH] Start work on day04 part2 --- day04.in2 | 20 ++++++++++++++++++++ day04.py | 24 ++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 day04.in2 diff --git a/day04.in2 b/day04.in2 new file mode 100644 index 0000000..f06791d --- /dev/null +++ b/day04.in2 @@ -0,0 +1,20 @@ +7,4,9,5,11,17,23,2,0,14,21,24,10,16,13,6,15,25,12,22,18,20,8,19,3,26,1 + +22 13 17 11 0 + 8 2 23 4 24 +21 9 14 16 7 + 6 10 3 18 5 + 1 12 20 15 19 + + 3 15 0 2 22 + 9 18 13 17 5 +19 8 7 25 23 +20 11 10 24 4 +14 21 16 12 6 + +14 21 17 24 4 +10 16 15 9 19 +18 8 23 26 20 +22 11 13 6 5 + 2 0 12 3 7 + diff --git a/day04.py b/day04.py index fbeedba..def33c5 100644 --- a/day04.py +++ b/day04.py @@ -28,6 +28,19 @@ def get_win_board(boards, checked): return None +def ingest(input): + """Ingest the input data""" + input_seq = input[0] + input.remove(input_seq) + input_seq = [int(x) for x in input_seq.rstrip().split(",")] + boards = [] + while input.count("\n") != 1: + input.remove("\n") + boards.append([[int(y) for y in x.rstrip().split()] for x in input[0:input.index("\n")]]) + input = input[input.index("\n"):len(input)] + return (input_seq, boards) + + def part1(): with open("day04.in", "r") as f: input_seq = [int(x) for x in f.readline().rstrip().split(",")] @@ -57,9 +70,20 @@ def part1(): print("Winning score:", score) +def part2(): + input_seq = None + boards = None + with open("day04.in2", "r") as f: + input_seq, boards = ingest([line for line in f]) + print(input_seq) + print(boards) + + def main(): print("=== PART 1 ===") part1() + print("=== PART 2 ===") + part2() if __name__ == "__main__":