diff --git a/day13/part2-v2-minified.py b/day13/part2-v2-minified.py new file mode 100644 index 0000000..a3fb4b2 --- /dev/null +++ b/day13/part2-v2-minified.py @@ -0,0 +1,2 @@ +t,s=0,1;w=lambda t:w(t+s)if(t+o)%b else 0 +for o,b in ((i,int(b))for i,b in enumerate(open("input.txt").readlines()[1].split(','))if b!='x'):t,s=w(t),s*b;print(t) diff --git a/day13/part2-v2.py b/day13/part2-v2.py new file mode 100644 index 0000000..bca95b4 --- /dev/null +++ b/day13/part2-v2.py @@ -0,0 +1,10 @@ +buses = open("input.txt").readlines()[1] +buses = ((index, int(bus)) for index, bus in enumerate(buses.split(',')) if bus != 'x') + +step, time = 1, 0 +for offset, bus in buses: + while (time + offset) % bus: + time += step + step *= bus + +print(time)