12 lines
503 B
Python
Executable File
12 lines
503 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
def scanner_pos(length, time):
|
|
offset = time % ((length - 1) * 2)
|
|
return 2 * (length - 1) - offset if offset > length - 1 else offset
|
|
|
|
import sys
|
|
import itertools
|
|
ranges = {k: v for (k, v) in [tuple(map(int, l.strip().split(": "))) for l in sys.stdin.readlines()]}
|
|
print(sum(pos * ranges[pos] for pos in ranges if scanner_pos(ranges[pos], pos) == 0))
|
|
print(next(time for time in itertools.count() if not any(scanner_pos(ranges[pos], time + pos) == 0 for pos in ranges)))
|