From eb5190b7d348df23dfa848a5cdbfead3cbfc38ce Mon Sep 17 00:00:00 2001 From: Tomasz Kramkowski Date: Thu, 7 Dec 2023 13:56:49 +0000 Subject: day 6 --- 6.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 6.py diff --git a/6.py b/6.py new file mode 100644 index 0000000..948f152 --- /dev/null +++ b/6.py @@ -0,0 +1,23 @@ +from functools import reduce +from math import floor, sqrt +from operator import mul +from sys import stdin + + +def solve(time: int, distance: int): + root = (time - sqrt(time**2 - 4 * distance)) / 2 + first = floor(root + 1) + return time - 2 * first + 1 + + +inp = list( + zip( + *( + [int(s) for s in l.split(maxsplit=1)[1].split()] + for l in stdin.read().rstrip("\n").split("\n") + ) + ) +) + +print(reduce(mul, (solve(*i) for i in inp))) +print(solve(int("".join(str(i[0]) for i in inp)), int("".join(str(i[1]) for i in inp)))) -- cgit v1.2.3-54-g00ecf