Explorar el Código

More zipping! :D

Taddeus Kroes hace 6 años
padre
commit
06973b9c20
Se han modificado 1 ficheros con 2 adiciones y 3 borrados
  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):