24 lines
511 B
Python
24 lines
511 B
Python
|
|
with open("input") as f:
|
|
adapters = [int(x) for x in f.read().strip().split("\n")]
|
|
|
|
adapters.extend([0, max(adapters)+3])
|
|
adapters.sort()
|
|
joltages = [b-a for a, b in zip(adapters, adapters[1:])]
|
|
print(joltages.count(1)*joltages.count(3))
|
|
|
|
|
|
joltages = ''.join(str(x) for x in joltages)
|
|
joltages = joltages.split('3')
|
|
|
|
counts = {
|
|
'': 1,
|
|
'1': 1,
|
|
'11': 2,
|
|
'111': 4,
|
|
'1111': 7,
|
|
}
|
|
from functools import reduce
|
|
print(reduce(lambda x, y: x*counts[y], joltages, 1))
|
|
|