]> git.friedersdorff.com Git - max/advent_of_code_2021.git/blob - 10_1.py
Try day 14
[max/advent_of_code_2021.git] / 10_1.py
1 """Find and score bothersome broken brackets"""
2
3 parens = {
4     ")": "(",
5     "]": "[",
6     "}": "{",
7     ">": "<"
8 }
9 scores = {
10     ")": 3,
11     "]": 57,
12     "}": 1197,
13     ">": 25137,
14 }
15
16 broken_chars = []
17 with open("10_input.txt") as f:
18     for line in f:
19         stack = []
20         for char in line.strip():
21             if char in "(<[{":
22                 stack.append(char)
23             else:
24                 if len(stack) == 0 or parens[char] != stack.pop():
25                     broken_chars.append(char)
26                     break
27
28 print(broken_chars)
29 print(sum([scores[char] for char in broken_chars]))