From a3a7e29bd968055a993f4900856cfe65cd92f871 Mon Sep 17 00:00:00 2001 From: kamoshi <18511281+kamoshi@users.noreply.github.com> Date: Sun, 13 Dec 2020 12:56:27 +0100 Subject: [PATCH] Create day13.py --- 2020/Python/day13.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 2020/Python/day13.py diff --git a/2020/Python/day13.py b/2020/Python/day13.py new file mode 100644 index 0000000..cc6da66 --- /dev/null +++ b/2020/Python/day13.py @@ -0,0 +1,31 @@ +def get_data() -> (int, list[int]): + with open("input.txt") as file: + time = int(file.readline().rstrip()) + buses = file.readline().rstrip().split(',') + return time, buses + + +def solve_p1(time: int, buses: list[str]) -> int: + + def find_earliest_departure(_bus_id: int, _time: int) -> int: + _departure = 0 + while _departure < _time: + _departure += _bus_id + return _departure + + times = [] + for bus in buses: + if bus == 'x': + continue + times.append((int(bus), find_earliest_departure(_bus_id=int(bus), _time=time))) + sort = sorted(times, key=lambda x: x[1]) + return sort[0][0] * (sort[0][1] - time) + + +def solve_p2(buses): + pass + + +TIME, BUSES = get_data() +print(solve_p1(TIME, BUSES)) +print(solve_p2(BUSES))