From 3ae5af26744d3465c32e72262454fa79fa4e75b9 Mon Sep 17 00:00:00 2001 From: Sebastian Seedorf Date: Sun, 13 Dec 2020 20:40:33 +0100 Subject: [PATCH] Day 13 (minified version 6) --- day13/part2-minified.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/day13/part2-minified.py b/day13/part2-minified.py index 5456268..f5bbacc 100644 --- a/day13/part2-minified.py +++ b/day13/part2-minified.py @@ -1 +1 @@ -from functools import reduce; from math import gcd; lcm = lambda a, b: abs(a*b) // gcd(a, b); merge = lambda a, b, x, y: (lcm(a, x), b) if b == y else merge(a, b + a * (max(-1, y-b-1) // a + 1), x, y + x * (max(-1, b-y-1) // x + 1)); print(reduce(lambda fn, fm: merge(*fn, *fm), ((int(x), -idx) for idx, x in enumerate([x.strip() for x in open("input.txt")][1].split(',')) if x != 'x'), (1, 0))[1]) +import functools;import math;lcm=lambda a,b:abs(a*b)//math.gcd(a,b);merge=lambda a,b,x,y:(lcm(a,x),b)if b==y else merge(a,b+a*(max(-1,y-b-1)//a+1),x,y+x*(max(-1,b-y-1)//x+1));print(functools.reduce(lambda fn,fm:merge(*fn,*fm),((int(x),-idx)for idx,x in enumerate([x.strip()for x in open("input.txt")][1].split(','))if x!='x'),(1,0))[1])