import collections | |||||
import itertools | |||||
import sys | |||||
text = sys.stdin.read() | |||||
inp = [int(n) for n in text.split(',')][::-1] | |||||
seen = collections.defaultdict(lambda: collections.deque(maxlen=2)) | |||||
spoken = None | |||||
for turn in itertools.count(1): | |||||
if inp: | |||||
spoken = inp.pop() | |||||
elif len(seen[spoken]) < 2: | |||||
spoken = 0 | |||||
else: | |||||
spoken = seen[spoken][-1] - seen[spoken][-2] | |||||
if turn == 2020: | |||||
print(spoken) | |||||
elif turn == 30_000_000: | |||||
print(spoken) | |||||
break | |||||
seen[spoken].append(turn) |