10_stars.py 565 B

12345678910111213141516171819202122232425
  1. #!/usr/bin/env python3
  2. import sys
  3. import re
  4. x, y, dx, dy = map(list, zip(*(map(int, re.findall(r'-?\d+', l)) for l in sys.stdin)))
  5. h = 1 << 63
  6. prevh = h + 1
  7. t = -1
  8. while h < prevh:
  9. prevh = h
  10. for i in range(len(x)):
  11. x[i] += dx[i]
  12. y[i] += dy[i]
  13. h = max(y) - min(y)
  14. t += 1
  15. for i in range(len(x)):
  16. x[i] -= dx[i]
  17. y[i] -= dy[i]
  18. points = set(zip(x, y))
  19. print('message after', t, 'seconds:')
  20. for py in range(min(y), max(y) + 1):
  21. print(''.join('#' if (px, py) in points else ' '
  22. for px in range(min(x), max(x) + 1)))