diff --git a/py/2020/10.py b/py/2020/10.py new file mode 100644 index 0000000..4edc4d8 --- /dev/null +++ b/py/2020/10.py @@ -0,0 +1,17 @@ +import sys + +def main(path): + with open(path) as f: + values = list(sorted(int(i) for i in f)) + values.append(max(values) + 3) + + diffs = [y - x for x, y in zip([0] + values, values)] + print(f"Part 1: {diffs.count(1) * diffs.count(3)}") + + combinations = [1] + [0] * max(values) + for adapter in values: + combinations[adapter] = sum(combinations[max(0, adapter-3):adapter]) + print(f"Part 2: {combinations[-1]}") + +if __name__ == "__main__": + main(sys.argv[1])