09.py
1 from lib import * 2 3 input = read_input(2016, 9).strip() 4 5 out = 0 6 i = 0 7 while i < len(input): 8 if input[i] == "(": 9 x = input[i + 1 :].split(")")[0] 10 a, b = map(int, x.split("x")) 11 i += len(x) + 2 12 out += b * min(a, len(input) - i) 13 i += a 14 continue 15 out += 1 16 i += 1 17 18 print(out) 19 20 21 def solve(inp): 22 out = 0 23 i = 0 24 while i < len(inp): 25 if inp[i] == "(": 26 x = inp[i + 1 :].split(")")[0] 27 a, b = map(int, x.split("x")) 28 i += len(x) + 2 29 out += b * solve(inp[i : i + a]) 30 i += a 31 continue 32 out += 1 33 i += 1 34 return out 35 36 37 print(solve(input))