Taddeus Kroes hace 7 años
padre
commit
e2b9c0c9e6
Se han modificado 2 ficheros con 375 adiciones y 0 borrados
  1. 25 0
      10_stars.py
  2. 350 0
      input/10

+ 25 - 0
10_stars.py

@@ -0,0 +1,25 @@
+#!/usr/bin/env python3
+import sys
+import re
+
+x, y, dx, dy = map(list, zip(*(map(int, re.findall(r'-?\d+', l)) for l in sys.stdin)))
+h = 1 << 63
+prevh = h + 1
+t = -1
+while h < prevh:
+    prevh = h
+    for i in range(len(x)):
+        x[i] += dx[i]
+        y[i] += dy[i]
+    h = max(y) - min(y)
+    t += 1
+
+for i in range(len(x)):
+    x[i] -= dx[i]
+    y[i] -= dy[i]
+
+print('message after', t, 'seconds:')
+points = set(zip(x, y))
+for py in range(min(y), max(y) + 1):
+    print(''.join('#' if (px, py) in points else '.'
+          for px in range(min(x), max(x) + 1)))

+ 350 - 0
input/10

@@ -0,0 +1,350 @@
+position=< 11153,  22033> velocity=<-1, -2>
+position=< 43975,  22031> velocity=<-4, -2>
+position=< 33014,  22033> velocity=<-3, -2>
+position=< 33038,  22033> velocity=<-3, -2>
+position=< 22086, -10798> velocity=<-2,  1>
+position=<-21709, -54568> velocity=< 2,  5>
+position=< 22053,  54850> velocity=<-2, -5>
+position=<-10756, -21744> velocity=< 1,  2>
+position=< 54917,  32967> velocity=<-5, -3>
+position=< 43971, -43628> velocity=<-4,  4>
+position=< 11110, -32682> velocity=<-1,  3>
+position=< 11138, -10801> velocity=<-1,  1>
+position=<-43576, -32684> velocity=< 4,  3>
+position=< 33043,  22029> velocity=<-3, -2>
+position=< 33017, -21740> velocity=<-3,  2>
+position=<-32599, -54570> velocity=< 3,  5>
+position=< 33017, -32683> velocity=<-3,  3>
+position=<-10754, -10795> velocity=< 1,  1>
+position=< 43967, -10802> velocity=<-4,  1>
+position=<-21681, -54570> velocity=< 2,  5>
+position=<-32643,  11087> velocity=< 3, -1>
+position=<-21664, -21742> velocity=< 2,  2>
+position=<-43558, -21735> velocity=< 4,  2>
+position=< 43954,  43913> velocity=<-4, -4>
+position=< 22075,  32966> velocity=<-2, -3>
+position=<-21691,  22028> velocity=< 2, -2>
+position=< 22087,  11085> velocity=<-2, -1>
+position=<-54514, -10797> velocity=< 5,  1>
+position=< 22063,  32972> velocity=<-2, -3>
+position=< 22051,  43915> velocity=<-2, -4>
+position=<-54492, -54565> velocity=< 5,  5>
+position=< 54904,  11088> velocity=<-5, -1>
+position=< 33009,  54859> velocity=<-3, -5>
+position=<-32624, -43628> velocity=< 3,  4>
+position=<-43545, -10797> velocity=< 4,  1>
+position=< 11128, -43628> velocity=<-1,  4>
+position=<-54527, -54567> velocity=< 5,  5>
+position=<-21666,  22024> velocity=< 2, -2>
+position=<-21661,  32973> velocity=< 2, -3>
+position=< 54901, -54569> velocity=<-5,  5>
+position=< 54885, -43623> velocity=<-5,  4>
+position=< 11138,  32974> velocity=<-1, -3>
+position=<-10743, -10795> velocity=< 1,  1>
+position=<-54535, -32679> velocity=< 5,  3>
+position=< 22084, -32677> velocity=<-2,  3>
+position=<-54526, -54569> velocity=< 5,  5>
+position=<-32611,  32973> velocity=< 3, -3>
+position=< 43935, -43622> velocity=<-4,  4>
+position=<-43561, -54568> velocity=< 4,  5>
+position=< 32996, -10797> velocity=<-3,  1>
+position=<-54535, -43622> velocity=< 5,  4>
+position=< 33006,  11084> velocity=<-3, -1>
+position=<-32642, -10801> velocity=< 3,  1>
+position=< 11125, -21735> velocity=<-1,  2>
+position=< 54933,  11086> velocity=<-5, -1>
+position=<-43552,  11083> velocity=< 4, -1>
+position=<-32610,  11083> velocity=< 3, -1>
+position=< 11133, -10799> velocity=<-1,  1>
+position=< 22075,  22032> velocity=<-2, -2>
+position=< 32994,  22024> velocity=<-3, -2>
+position=<-32603,  32967> velocity=< 3, -3>
+position=<-43596, -43625> velocity=< 4,  4>
+position=<-21700, -10797> velocity=< 2,  1>
+position=<-54509, -54565> velocity=< 5,  5>
+position=<-32615,  43917> velocity=< 3, -4>
+position=< 33049,  54853> velocity=<-3, -5>
+position=<-54508, -43619> velocity=< 5,  4>
+position=<-32606, -10794> velocity=< 3,  1>
+position=< 22087, -32686> velocity=<-2,  3>
+position=<-21657, -21735> velocity=< 2,  2>
+position=<-43548, -32678> velocity=< 4,  3>
+position=< 54906,  11087> velocity=<-5, -1>
+position=<-32639,  54851> velocity=< 3, -5>
+position=<-10765, -43628> velocity=< 1,  4>
+position=<-32630,  11089> velocity=< 3, -1>
+position=< 32993,  43917> velocity=<-3, -4>
+position=< 11133, -21738> velocity=<-1,  2>
+position=< 54890, -21735> velocity=<-5,  2>
+position=< 43946, -10798> velocity=<-4,  1>
+position=<-21688,  22024> velocity=< 2, -2>
+position=<-43572,  11088> velocity=< 4, -1>
+position=< 22059, -43623> velocity=<-2,  4>
+position=< 43953, -32681> velocity=<-4,  3>
+position=<-32651, -21740> velocity=< 3,  2>
+position=< 33033, -54561> velocity=<-3,  5>
+position=< 43935,  54854> velocity=<-4, -5>
+position=<-32632,  43914> velocity=< 3, -4>
+position=< 54901,  54855> velocity=<-5, -5>
+position=< 11127,  11087> velocity=<-1, -1>
+position=< 54877,  22028> velocity=<-5, -2>
+position=< 22080, -54564> velocity=<-2,  5>
+position=< 54917, -21743> velocity=<-5,  2>
+position=<-10771, -43624> velocity=< 1,  4>
+position=<-32600, -54561> velocity=< 3,  5>
+position=<-54543,  22027> velocity=< 5, -2>
+position=< 22075, -21736> velocity=<-2,  2>
+position=<-32646, -32684> velocity=< 3,  3>
+position=<-43593,  11085> velocity=< 4, -1>
+position=<-54506, -32685> velocity=< 5,  3>
+position=< 33017, -10797> velocity=<-3,  1>
+position=< 43995, -21735> velocity=<-4,  2>
+position=< 33049, -32681> velocity=<-3,  3>
+position=<-32656, -43628> velocity=< 3,  4>
+position=<-21693,  11091> velocity=< 2, -1>
+position=< 33014, -54562> velocity=<-3,  5>
+position=<-43561,  43911> velocity=< 4, -4>
+position=< 54897, -32685> velocity=<-5,  3>
+position=<-21697,  32971> velocity=< 2, -3>
+position=<-54490,  54859> velocity=< 5, -5>
+position=< 22085,  43917> velocity=<-2, -4>
+position=< 11112, -43623> velocity=<-1,  4>
+position=<-43548, -10798> velocity=< 4,  1>
+position=< 43943, -21736> velocity=<-4,  2>
+position=< 33002, -10798> velocity=<-3,  1>
+position=<-43557,  43917> velocity=< 4, -4>
+position=<-21709,  22033> velocity=< 2, -2>
+position=<-54533,  32970> velocity=< 5, -3>
+position=<-10762, -43625> velocity=< 1,  4>
+position=<-32611, -10793> velocity=< 3,  1>
+position=<-32606, -54568> velocity=< 3,  5>
+position=< 43975,  43910> velocity=<-4, -4>
+position=<-43601,  54850> velocity=< 4, -5>
+position=< 54901,  11083> velocity=<-5, -1>
+position=< 43971, -10793> velocity=<-4,  1>
+position=< 54930, -32682> velocity=<-5,  3>
+position=< 54910, -32680> velocity=<-5,  3>
+position=<-54508,  54859> velocity=< 5, -5>
+position=< 43951, -43621> velocity=<-4,  4>
+position=< 11143, -54570> velocity=<-1,  5>
+position=<-54531,  11089> velocity=< 5, -1>
+position=< 11126,  32967> velocity=<-1, -3>
+position=< 54906,  43914> velocity=<-5, -4>
+position=<-32603, -10801> velocity=< 3,  1>
+position=< 54909, -43620> velocity=<-5,  4>
+position=< 43986, -21744> velocity=<-4,  2>
+position=< 54933, -32684> velocity=<-5,  3>
+position=<-32659, -43619> velocity=< 3,  4>
+position=< 43985, -21739> velocity=<-4,  2>
+position=<-32651,  54857> velocity=< 3, -5>
+position=< 33046,  32969> velocity=<-3, -3>
+position=<-21657,  54859> velocity=< 2, -5>
+position=<-54543,  43916> velocity=< 5, -4>
+position=<-21696,  54852> velocity=< 2, -5>
+position=< 11170, -21736> velocity=<-1,  2>
+position=< 32993, -32684> velocity=<-3,  3>
+position=<-54535,  32966> velocity=< 5, -3>
+position=< 22102,  32971> velocity=<-2, -3>
+position=<-54508,  32966> velocity=< 5, -3>
+position=< 11122, -43620> velocity=<-1,  4>
+position=<-43580, -32679> velocity=< 4,  3>
+position=<-32625,  22024> velocity=< 3, -2>
+position=<-54527,  43910> velocity=< 5, -4>
+position=<-10714,  11083> velocity=< 1, -1>
+position=<-43559,  54859> velocity=< 4, -5>
+position=<-32651, -10797> velocity=< 3,  1>
+position=< 43937,  22028> velocity=<-4, -2>
+position=<-43543, -10793> velocity=< 4,  1>
+position=<-43561, -32679> velocity=< 4,  3>
+position=<-21659, -54570> velocity=< 2,  5>
+position=< 22080, -10800> velocity=<-2,  1>
+position=< 43959,  22033> velocity=<-4, -2>
+position=<-10733,  43917> velocity=< 1, -4>
+position=<-21688,  11083> velocity=< 2, -1>
+position=<-54486,  11082> velocity=< 5, -1>
+position=<-32655, -10796> velocity=< 3,  1>
+position=<-10759,  54853> velocity=< 1, -5>
+position=<-43590, -21744> velocity=< 4,  2>
+position=<-43560, -32677> velocity=< 4,  3>
+position=<-32647,  54854> velocity=< 3, -5>
+position=<-10775, -10796> velocity=< 1,  1>
+position=< 11135, -43625> velocity=<-1,  4>
+position=< 22072, -10800> velocity=<-2,  1>
+position=< 22107,  43912> velocity=<-2, -4>
+position=<-32638,  32972> velocity=< 3, -3>
+position=<-54495,  54853> velocity=< 5, -5>
+position=< 54906,  32970> velocity=<-5, -3>
+position=<-54514,  54853> velocity=< 5, -5>
+position=<-54527, -21740> velocity=< 5,  2>
+position=<-21669,  54858> velocity=< 2, -5>
+position=<-10735, -10793> velocity=< 1,  1>
+position=< 11165, -54566> velocity=<-1,  5>
+position=< 43951,  22033> velocity=<-4, -2>
+position=< 33044,  54850> velocity=<-3, -5>
+position=<-54514, -32685> velocity=< 5,  3>
+position=<-10727, -43626> velocity=< 1,  4>
+position=< 43967,  11089> velocity=<-4, -1>
+position=< 22069, -43623> velocity=<-2,  4>
+position=< 11142,  43917> velocity=<-1, -4>
+position=< 43935,  32971> velocity=<-4, -3>
+position=<-21705, -21737> velocity=< 2,  2>
+position=<-32646,  54858> velocity=< 3, -5>
+position=< 54877, -54562> velocity=<-5,  5>
+position=< 22109,  43917> velocity=<-2, -4>
+position=<-43564, -54569> velocity=< 4,  5>
+position=<-43545,  22031> velocity=< 4, -2>
+position=< 11170,  11083> velocity=<-1, -1>
+position=<-21709,  11085> velocity=< 2, -1>
+position=<-54535,  11091> velocity=< 5, -1>
+position=<-43565,  22027> velocity=< 4, -2>
+position=<-10735, -32679> velocity=< 1,  3>
+position=<-32633, -32683> velocity=< 3,  3>
+position=<-54540, -54570> velocity=< 5,  5>
+position=< 54901, -32686> velocity=<-5,  3>
+position=< 22103,  22029> velocity=<-2, -2>
+position=<-10771,  43912> velocity=< 1, -4>
+position=< 54917,  54850> velocity=<-5, -5>
+position=<-54527,  22027> velocity=< 5, -2>
+position=<-54543,  11089> velocity=< 5, -1>
+position=< 22110,  43908> velocity=<-2, -4>
+position=< 22084, -21735> velocity=<-2,  2>
+position=<-54535, -10796> velocity=< 5,  1>
+position=<-10733,  43917> velocity=< 1, -4>
+position=<-10767, -43628> velocity=< 1,  4>
+position=< 22054, -54565> velocity=<-2,  5>
+position=<-54495,  54858> velocity=< 5, -5>
+position=< 22103,  43909> velocity=<-2, -4>
+position=<-10766, -21740> velocity=< 1,  2>
+position=<-43580,  22030> velocity=< 4, -2>
+position=<-21688,  32969> velocity=< 2, -3>
+position=< 33033,  11088> velocity=<-3, -1>
+position=< 43971,  32975> velocity=<-4, -3>
+position=< 22054,  32970> velocity=<-2, -3>
+position=< 54934, -21735> velocity=<-5,  2>
+position=< 33022,  43916> velocity=<-3, -4>
+position=<-54493,  43908> velocity=< 5, -4>
+position=<-10740,  43912> velocity=< 1, -4>
+position=< 54888,  32971> velocity=<-5, -3>
+position=<-32651,  22033> velocity=< 3, -2>
+position=< 22051, -54569> velocity=<-2,  5>
+position=< 54904, -32681> velocity=<-5,  3>
+position=<-54506, -21735> velocity=< 5,  2>
+position=<-10775,  43913> velocity=< 1, -4>
+position=<-10743,  11090> velocity=< 1, -1>
+position=<-43564,  22024> velocity=< 4, -2>
+position=<-32606,  43913> velocity=< 3, -4>
+position=< 22055,  11089> velocity=<-2, -1>
+position=<-43561,  11090> velocity=< 4, -1>
+position=< 22055, -43624> velocity=<-2,  4>
+position=< 33001,  32967> velocity=<-3, -3>
+position=< 33043,  22024> velocity=<-3, -2>
+position=< 54914, -21744> velocity=<-5,  2>
+position=<-10762, -32685> velocity=< 1,  3>
+position=<-32635, -32677> velocity=< 3,  3>
+position=< 43969,  54859> velocity=<-4, -5>
+position=< 22059, -10795> velocity=<-2,  1>
+position=<-54511,  22031> velocity=< 5, -2>
+position=<-21669,  11085> velocity=< 2, -1>
+position=< 11126, -10797> velocity=<-1,  1>
+position=<-10727, -10796> velocity=< 1,  1>
+position=<-21717, -54568> velocity=< 2,  5>
+position=< 54930,  43914> velocity=<-5, -4>
+position=< 43991, -21742> velocity=<-4,  2>
+position=<-32611, -21740> velocity=< 3,  2>
+position=< 54882, -32678> velocity=<-5,  3>
+position=<-54535, -54562> velocity=< 5,  5>
+position=< 54920,  22033> velocity=<-5, -2>
+position=<-54515,  43915> velocity=< 5, -4>
+position=< 11146, -54570> velocity=<-1,  5>
+position=<-54543,  43911> velocity=< 5, -4>
+position=< 43984,  32971> velocity=<-4, -3>
+position=<-43553,  54855> velocity=< 4, -5>
+position=< 32993, -43619> velocity=<-3,  4>
+position=< 43953, -10802> velocity=<-4,  1>
+position=< 33022, -10793> velocity=<-3,  1>
+position=<-43591, -32686> velocity=< 4,  3>
+position=<-43596, -21735> velocity=< 4,  2>
+position=< 54879, -10798> velocity=<-5,  1>
+position=<-54543, -32678> velocity=< 5,  3>
+position=<-10727,  22032> velocity=< 1, -2>
+position=< 22053,  54854> velocity=<-2, -5>
+position=<-21677,  22032> velocity=< 2, -2>
+position=< 32996,  54854> velocity=<-3, -5>
+position=< 11149,  54859> velocity=<-1, -5>
+position=<-21701,  22030> velocity=< 2, -2>
+position=< 22104,  43914> velocity=<-2, -4>
+position=< 43963,  43916> velocity=<-4, -4>
+position=<-10755, -54565> velocity=< 1,  5>
+position=< 22086,  54854> velocity=<-2, -5>
+position=< 33041, -10793> velocity=<-3,  1>
+position=< 11165, -54562> velocity=<-1,  5>
+position=< 22067,  54854> velocity=<-2, -5>
+position=<-43580,  32971> velocity=< 4, -3>
+position=<-21709,  22026> velocity=< 2, -2>
+position=< 33022, -21736> velocity=<-3,  2>
+position=<-10727,  22028> velocity=< 1, -2>
+position=< 11125,  54858> velocity=<-1, -5>
+position=<-32655, -32686> velocity=< 3,  3>
+position=<-21713,  11088> velocity=< 2, -1>
+position=< 54909, -21744> velocity=<-5,  2>
+position=< 33002,  54854> velocity=<-3, -5>
+position=< 22107,  32972> velocity=<-2, -3>
+position=<-21693, -10800> velocity=< 2,  1>
+position=< 33046, -54562> velocity=<-3,  5>
+position=< 33013, -32685> velocity=<-3,  3>
+position=< 54889, -54566> velocity=<-5,  5>
+position=< 33049, -43623> velocity=<-3,  4>
+position=<-10722,  54856> velocity=< 1, -5>
+position=< 43968, -32686> velocity=<-4,  3>
+position=<-54503,  43908> velocity=< 5, -4>
+position=<-21664,  54852> velocity=< 2, -5>
+position=<-43567,  32975> velocity=< 4, -3>
+position=<-10735, -54565> velocity=< 1,  5>
+position=< 22060, -21744> velocity=<-2,  2>
+position=< 11165,  22031> velocity=<-1, -2>
+position=< 54914,  22026> velocity=<-5, -2>
+position=< 54936,  22024> velocity=<-5, -2>
+position=<-43593, -43622> velocity=< 4,  4>
+position=<-43548, -10793> velocity=< 4,  1>
+position=< 33022,  11084> velocity=<-3, -1>
+position=< 33013, -21739> velocity=<-3,  2>
+position=<-54531,  54850> velocity=< 5, -5>
+position=< 54882, -10800> velocity=<-5,  1>
+position=< 11133, -54563> velocity=<-1,  5>
+position=<-21696, -10798> velocity=< 2,  1>
+position=<-54524, -43623> velocity=< 5,  4>
+position=< 43940,  43909> velocity=<-4, -4>
+position=<-32619, -54569> velocity=< 3,  5>
+position=< 22076,  43909> velocity=<-2, -4>
+position=< 43945, -21740> velocity=<-4,  2>
+position=<-21717, -32681> velocity=< 2,  3>
+position=<-21692, -21742> velocity=< 2,  2>
+position=<-43553,  54853> velocity=< 4, -5>
+position=< 54914,  32967> velocity=<-5, -3>
+position=< 54910, -32686> velocity=<-5,  3>
+position=<-32627,  32974> velocity=< 3, -3>
+position=< 22062,  11087> velocity=<-2, -1>
+position=<-10714,  43916> velocity=< 1, -4>
+position=<-21698, -43623> velocity=< 2,  4>
+position=<-21692,  22025> velocity=< 2, -2>
+position=< 33026,  43914> velocity=<-3, -4>
+position=< 43940,  22025> velocity=<-4, -2>
+position=<-54506, -21742> velocity=< 5,  2>
+position=<-32654, -10801> velocity=< 3,  1>
+position=<-43599,  32966> velocity=< 4, -3>
+position=< 33014, -43619> velocity=<-3,  4>
+position=< 33009, -54566> velocity=<-3,  5>
+position=<-43580, -21741> velocity=< 4,  2>
+position=<-32631, -32679> velocity=< 3,  3>
+position=< 11118,  11082> velocity=<-1, -1>
+position=<-10743, -21744> velocity=< 1,  2>
+position=<-10767, -43620> velocity=< 1,  4>
+position=< 11157, -43624> velocity=<-1,  4>
+position=< 54928, -10797> velocity=<-5,  1>
+position=<-54511, -54561> velocity=< 5,  5>
+position=< 54936, -21744> velocity=<-5,  2>
+position=<-32606,  54857> velocity=< 3, -5>
+position=<-21715,  32966> velocity=< 2, -3>
+position=<-32619, -10798> velocity=< 3,  1>
+position=< 11149,  32974> velocity=<-1, -3>
+position=< 22103,  54851> velocity=<-2, -5>