Browse Source

More zipping! :D

Taddeus Kroes 6 years ago
parent
commit
06973b9c20
1 changed files with 2 additions and 3 deletions
  1. 2 3
      2019/12_jupiter.py

+ 2 - 3
2019/12_jupiter.py

@@ -25,9 +25,8 @@ def sim(axis):
         yield pos, vel
 
 def energy_after(moons, steps):
-    x, y, z = zip(*moons)
-    axes = next(islice(zip(sim(x), sim(y), sim(z)), steps - 1, steps))
-    pos, vel = zip(*axes)
+    sims = zip(*map(sim, zip(*moons)))
+    pos, vel = zip(*next(islice(sims, steps - 1, steps)))
     return sum(abssum(p) * abssum(v) for p, v in zip(zip(*pos), zip(*vel)))
 
 def axis_cycle(axis):