No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

23 líneas
611B

  1. from collections import deque
  2. def run(src, cycles=1, factor=1):
  3. els = deque([(i, int(n) * factor) for i, n in enumerate(src)])
  4. zero, = [el for el in els if el[1] == 0]
  5. order = list(els)
  6. for _ in range(cycles):
  7. for el in order:
  8. idx = els.index(el)
  9. els.rotate(-idx)
  10. els.popleft()
  11. els.rotate(-el[1])
  12. els.appendleft(el)
  13. idx = els.index(zero)
  14. els.rotate(-idx)
  15. return sum(els[n % len(els)][1] for n in [1000, 2000, 3000])
  16. els = open(0).read().splitlines()
  17. print(run(els))
  18. print(run(els, cycles=10, factor=811589153))