Jacopo De Simoi 11 months ago
parent 95f2f4215a
commit 3739dac105
  1. 500
      p14/input
  2. 12
      p14/input-test
  3. 545
      p14/p14.org

@ -0,0 +1,500 @@
p=77,59 v=2,-23
p=77,53 v=-90,9
p=85,100 v=-90,-77
p=22,57 v=82,-94
p=84,72 v=-39,60
p=57,76 v=14,-94
p=2,92 v=-52,-63
p=38,73 v=42,-39
p=4,93 v=-93,41
p=79,56 v=27,-13
p=20,5 v=-10,-68
p=51,94 v=38,-2
p=15,5 v=-93,-68
p=4,49 v=56,6
p=37,78 v=1,63
p=46,60 v=-18,70
p=19,47 v=-96,54
p=79,83 v=21,-26
p=77,59 v=82,-86
p=27,40 v=-51,24
p=84,68 v=-88,-72
p=59,60 v=-22,18
p=66,67 v=-88,24
p=64,101 v=-67,86
p=13,44 v=-53,-68
p=44,53 v=-80,34
p=31,71 v=27,-25
p=98,71 v=90,78
p=25,60 v=-19,-47
p=64,59 v=-56,-16
p=67,23 v=-63,72
p=85,36 v=-99,-5
p=89,64 v=-81,-13
p=71,33 v=-7,-18
p=30,75 v=27,74
p=51,86 v=42,50
p=35,3 v=-41,17
p=67,7 v=52,44
p=71,6 v=-40,21
p=49,51 v=-18,-32
p=77,22 v=-95,86
p=72,16 v=-49,63
p=96,11 v=-38,7
p=26,44 v=82,-4
p=36,5 v=42,24
p=20,13 v=45,30
p=47,23 v=8,-87
p=24,99 v=13,-77
p=2,66 v=58,70
p=61,86 v=99,81
p=42,67 v=20,80
p=69,80 v=1,-15
p=1,10 v=85,-55
p=68,95 v=-16,16
p=87,16 v=2,-17
p=71,27 v=-73,14
p=36,57 v=-82,83
p=0,6 v=21,68
p=41,67 v=-41,-99
p=52,60 v=-52,-47
p=11,32 v=-93,34
p=31,27 v=64,53
p=52,84 v=-73,36
p=2,85 v=-62,46
p=40,54 v=-97,-61
p=59,58 v=-22,-70
p=64,23 v=-87,-15
p=42,34 v=-36,-44
p=43,42 v=37,82
p=40,75 v=-13,98
p=65,18 v=38,-17
p=53,51 v=-17,-70
p=62,5 v=-91,7
p=75,28 v=-19,-43
p=87,101 v=-16,-2
p=99,56 v=58,84
p=69,101 v=89,-77
p=5,12 v=91,-97
p=34,35 v=-14,62
p=52,87 v=85,-33
p=18,13 v=86,-40
p=51,37 v=55,61
p=57,94 v=-13,-44
p=87,100 v=-3,-13
p=22,2 v=25,38
p=8,97 v=-43,30
p=55,27 v=14,-59
p=33,13 v=68,-32
p=97,55 v=-18,-14
p=33,60 v=45,60
p=88,29 v=-99,-31
p=84,93 v=66,66
p=28,83 v=31,27
p=32,52 v=-69,-14
p=100,93 v=80,92
p=72,87 v=44,-32
p=74,61 v=11,-52
p=39,67 v=-14,37
p=67,92 v=-17,-91
p=26,26 v=38,-55
p=50,15 v=19,36
p=52,57 v=46,50
p=78,19 v=48,-78
p=56,42 v=-68,15
p=43,17 v=14,48
p=5,17 v=-94,95
p=56,13 v=-49,7
p=41,66 v=92,-1
p=9,82 v=44,-10
p=92,33 v=-16,66
p=55,92 v=-45,50
p=72,76 v=-68,-85
p=40,69 v=4,-85
p=29,84 v=54,8
p=53,42 v=-27,-4
p=32,80 v=-44,66
p=87,3 v=53,-86
p=0,48 v=-24,14
p=76,84 v=25,55
p=27,17 v=-14,72
p=38,68 v=-82,54
p=60,91 v=47,12
p=74,17 v=-90,-73
p=87,79 v=75,97
p=73,70 v=-33,76
p=21,83 v=66,17
p=14,29 v=12,29
p=61,38 v=-40,15
p=0,59 v=-86,3
p=27,19 v=27,-13
p=14,37 v=4,14
p=97,17 v=2,-59
p=66,80 v=-99,85
p=1,28 v=49,95
p=28,99 v=4,7
p=81,34 v=11,1
p=8,63 v=67,33
p=77,20 v=-79,-34
p=76,92 v=66,-40
p=1,54 v=3,-56
p=15,66 v=73,-21
p=86,45 v=33,-95
p=94,35 v=59,-49
p=22,9 v=-10,-3
p=34,69 v=18,14
p=99,45 v=12,89
p=86,34 v=94,94
p=87,16 v=91,70
p=55,24 v=-48,-21
p=75,44 v=-35,66
p=85,77 v=66,-80
p=30,72 v=60,98
p=3,30 v=-86,-18
p=24,60 v=-61,-10
p=34,88 v=41,-20
p=0,54 v=-66,28
p=85,69 v=69,-5
p=52,24 v=-60,3
p=90,95 v=22,-81
p=9,90 v=-75,59
p=78,78 v=-76,-90
p=66,61 v=-95,32
p=24,70 v=-56,-71
p=89,48 v=-80,-98
p=74,7 v=-61,77
p=51,66 v=-50,-1
p=90,37 v=-58,20
p=46,49 v=5,98
p=95,0 v=57,-58
p=44,6 v=79,-31
p=41,53 v=-45,-2
p=9,23 v=-6,-27
p=35,69 v=-92,-99
p=59,39 v=-30,-76
p=23,36 v=-44,-82
p=61,39 v=-39,-68
p=3,3 v=-51,40
p=23,79 v=-19,-11
p=49,83 v=47,40
p=84,64 v=-39,56
p=57,91 v=19,17
p=60,43 v=-73,73
p=54,16 v=51,72
p=54,10 v=-92,-99
p=48,62 v=42,84
p=45,42 v=42,-18
p=72,99 v=86,48
p=39,76 v=-9,-57
p=83,61 v=-85,65
p=67,80 v=98,-90
p=28,27 v=-70,-37
p=68,9 v=-40,34
p=39,5 v=78,-40
p=10,90 v=43,-86
p=49,29 v=-8,39
p=79,54 v=-8,-42
p=79,71 v=-90,69
p=100,50 v=35,28
p=48,84 v=14,-85
p=58,12 v=98,-26
p=48,26 v=35,58
p=40,11 v=78,-50
p=82,51 v=71,-14
p=52,4 v=-1,-77
p=47,102 v=14,-68
p=16,46 v=-47,-9
p=14,63 v=95,9
p=83,39 v=-34,-88
p=2,51 v=-95,77
p=57,20 v=-9,25
p=87,1 v=90,-11
p=55,40 v=-95,-83
p=96,60 v=-2,-9
p=86,12 v=58,70
p=54,57 v=33,37
p=16,88 v=-91,-83
p=56,13 v=39,-38
p=70,21 v=84,11
p=4,17 v=90,-17
p=45,18 v=-50,-50
p=77,7 v=-63,-88
p=2,59 v=-54,-59
p=62,81 v=-22,8
p=72,55 v=75,-47
p=62,55 v=32,27
p=57,56 v=-77,-89
p=99,61 v=-54,65
p=73,8 v=-81,-12
p=12,96 v=-55,15
p=44,41 v=8,30
p=96,53 v=35,19
p=26,65 v=64,-38
p=14,85 v=15,45
p=98,3 v=-2,35
p=3,91 v=-56,-7
p=48,6 v=-18,-44
p=60,98 v=33,21
p=43,45 v=-28,-60
p=38,71 v=-46,13
p=71,19 v=-86,-45
p=99,48 v=31,61
p=58,29 v=52,-31
p=65,94 v=52,-12
p=22,22 v=78,-78
p=98,62 v=83,-11
p=76,74 v=-72,93
p=19,82 v=-39,58
p=72,81 v=-9,41
p=85,92 v=-62,17
p=10,4 v=5,-61
p=70,49 v=-40,79
p=4,21 v=81,-31
p=99,8 v=67,44
p=85,34 v=-34,-19
p=1,31 v=19,-19
p=71,101 v=-12,-77
p=15,81 v=-24,-90
p=83,79 v=-17,-52
p=48,91 v=97,-11
p=51,57 v=-18,-5
p=34,25 v=-92,25
p=50,8 v=-96,-96
p=71,5 v=94,86
p=16,49 v=25,-88
p=45,2 v=-37,39
p=43,23 v=-79,67
p=36,41 v=-73,70
p=42,45 v=-26,-22
p=29,100 v=4,-55
p=60,98 v=-40,-27
p=57,21 v=-7,-58
p=96,22 v=21,-60
p=36,97 v=-43,-1
p=1,94 v=-94,91
p=45,60 v=-78,37
p=27,6 v=85,-51
p=48,12 v=64,71
p=89,75 v=-81,8
p=76,51 v=-21,14
p=71,13 v=20,-13
p=90,9 v=43,-31
p=33,4 v=-69,31
p=54,65 v=-31,84
p=61,87 v=56,-67
p=34,42 v=-92,61
p=2,5 v=-43,58
p=44,2 v=55,-63
p=66,50 v=-89,76
p=24,77 v=-95,-71
p=15,11 v=97,-88
p=95,58 v=6,14
p=70,72 v=-8,-57
p=30,84 v=68,44
p=8,67 v=-84,-19
p=54,44 v=-59,-91
p=69,42 v=-8,-93
p=40,27 v=-18,-13
p=17,38 v=-20,-93
p=79,37 v=66,-51
p=77,10 v=52,48
p=18,77 v=85,71
p=45,2 v=48,15
p=93,98 v=26,53
p=97,57 v=44,52
p=91,80 v=94,83
p=71,54 v=-5,91
p=32,33 v=87,76
p=21,59 v=31,56
p=76,78 v=-30,-66
p=39,45 v=-87,90
p=46,84 v=-50,-76
p=65,102 v=-77,-30
p=5,46 v=-75,-84
p=5,33 v=-94,6
p=6,50 v=-51,-94
p=74,26 v=-58,-27
p=29,62 v=26,-32
p=18,89 v=87,-63
p=66,31 v=-94,46
p=23,27 v=-42,67
p=47,36 v=-87,-88
p=11,92 v=-75,-76
p=9,51 v=-1,19
p=52,0 v=28,-35
p=68,72 v=-63,10
p=41,46 v=-32,75
p=99,42 v=99,94
p=98,29 v=3,45
p=61,69 v=-45,-52
p=50,66 v=66,8
p=3,41 v=40,71
p=83,45 v=-85,-23
p=0,34 v=3,-93
p=54,49 v=88,-23
p=65,50 v=57,-38
p=37,34 v=38,-86
p=100,77 v=13,-23
p=80,39 v=-13,32
p=31,102 v=-1,16
p=62,64 v=15,9
p=48,13 v=-73,-87
p=69,19 v=-95,16
p=50,89 v=75,-85
p=45,33 v=-96,-37
p=13,75 v=77,60
p=17,43 v=91,-41
p=17,99 v=45,-86
p=68,20 v=40,66
p=47,11 v=-37,-12
p=64,85 v=56,2
p=46,30 v=92,43
p=84,57 v=-99,-14
p=55,18 v=46,-46
p=42,87 v=64,-34
p=94,96 v=57,16
p=20,14 v=-24,2
p=52,44 v=33,-9
p=4,95 v=7,-76
p=99,25 v=-74,87
p=78,31 v=95,-69
p=79,21 v=-55,32
p=20,25 v=68,15
p=77,102 v=2,-82
p=45,29 v=-91,-31
p=10,55 v=19,55
p=74,0 v=75,-92
p=38,64 v=-23,70
p=10,99 v=58,-65
p=8,73 v=97,41
p=43,26 v=32,66
p=73,96 v=20,-91
p=30,27 v=-81,77
p=13,0 v=-38,-82
p=18,37 v=-42,15
p=57,40 v=19,43
p=25,68 v=82,32
p=10,2 v=-80,-59
p=0,85 v=12,-86
p=60,18 v=68,21
p=39,86 v=-69,-53
p=98,0 v=26,-35
p=58,17 v=1,-69
p=38,44 v=-65,-86
p=24,28 v=-47,-45
p=20,27 v=9,-23
p=0,65 v=77,-15
p=95,71 v=94,78
p=68,77 v=93,55
p=77,3 v=-42,17
p=94,4 v=53,68
p=97,28 v=-29,-9
p=54,84 v=50,67
p=81,70 v=21,-52
p=68,10 v=46,99
p=29,34 v=-88,-64
p=79,77 v=80,-6
p=54,66 v=-13,-52
p=67,50 v=7,60
p=20,1 v=32,-96
p=29,4 v=-83,49
p=70,35 v=70,-13
p=59,40 v=-22,80
p=73,47 v=-3,66
p=88,13 v=85,-36
p=21,80 v=55,64
p=37,28 v=-32,-97
p=88,0 v=98,73
p=68,59 v=29,-14
p=90,87 v=62,31
p=76,13 v=11,-31
p=19,23 v=44,97
p=25,46 v=77,-66
p=95,41 v=70,-63
p=4,11 v=35,-54
p=83,30 v=-23,-31
p=0,26 v=-97,53
p=29,96 v=73,21
p=5,51 v=81,28
p=85,41 v=-62,-37
p=60,22 v=-45,-13
p=96,27 v=81,80
p=46,37 v=-73,71
p=46,30 v=65,19
p=79,98 v=-12,-63
p=99,33 v=-95,-45
p=77,47 v=-44,-27
p=48,97 v=-18,-44
p=77,78 v=-2,11
p=87,52 v=-44,5
p=4,68 v=-15,23
p=12,47 v=-79,5
p=5,58 v=26,-61
p=35,30 v=-84,17
p=45,73 v=19,-33
p=10,102 v=-97,-49
p=70,67 v=75,9
p=42,34 v=9,-41
p=12,37 v=75,39
p=1,5 v=-66,96
p=78,60 v=-48,-5
p=3,81 v=40,-15
p=64,51 v=20,-23
p=19,27 v=91,44
p=66,4 v=43,40
p=54,20 v=43,-17
p=19,51 v=54,19
p=97,70 v=-15,-47
p=63,91 v=-6,-43
p=72,50 v=-72,14
p=48,29 v=70,86
p=69,19 v=-26,95
p=36,36 v=50,76
p=51,2 v=-50,-54
p=24,39 v=-78,-18
p=50,89 v=65,-2
p=27,34 v=-51,-65
p=0,48 v=-7,-80
p=12,58 v=8,51
p=0,86 v=26,82
p=15,92 v=-79,-40
p=59,69 v=37,-62
p=17,72 v=10,28
p=76,42 v=-90,99
p=59,45 v=-22,32
p=59,45 v=-31,-51
p=98,32 v=-29,47
p=15,89 v=-1,-58
p=23,90 v=22,36
p=31,91 v=50,50
p=20,69 v=-1,27
p=18,80 v=36,74
p=39,45 v=82,-88
p=42,44 v=37,5
p=37,69 v=-64,-80
p=32,70 v=55,32
p=96,102 v=62,12
p=48,42 v=-76,-41
p=47,65 v=14,-6
p=27,97 v=25,12
p=55,69 v=-55,22
p=17,76 v=1,-61
p=43,28 v=28,6
p=29,25 v=73,-41
p=64,10 v=34,-96
p=63,41 v=93,15
p=3,9 v=-52,77
p=61,100 v=43,-5
p=54,24 v=6,-79
p=89,75 v=44,-85
p=79,61 v=-90,-94
p=99,102 v=-70,35
p=39,65 v=-78,4
p=5,19 v=63,71
p=93,101 v=35,-44
p=5,26 v=31,-80
p=27,51 v=80,37
p=62,88 v=-51,-77
p=75,71 v=-12,27
p=74,45 v=66,33
p=22,42 v=34,67

@ -0,0 +1,12 @@
p=0,4 v=3,-3
p=6,3 v=-1,-3
p=10,3 v=-1,2
p=2,0 v=2,-1
p=0,0 v=1,3
p=3,0 v=-2,-2
p=7,6 v=-1,-3
p=3,0 v=-1,-2
p=9,3 v=2,3
p=7,3 v=-1,2
p=2,4 v=2,-3
p=9,5 v=-3,-3

@ -0,0 +1,545 @@
#+title: Solution to p14
First parse with regex to make into a list
#+begin_src emacs-lisp
(require 'dash)
(with-temp-buffer
(insert-file-contents "input")
(goto-char (point-min))
(replace-regexp "p=\\([-0-9]+\\),\\([-0-9]+\\) v=\\([-0-9]+\\),\\([-0-9]+\\)"
"((\\1 \\2) (\\3 \\4))")
(goto-char (point-min))
(insert "(setq data '(")
(goto-char (point-max))
(insert "))")
(eval-buffer))
(setq h 103
w 101)
(print data)
#+end_src
#+RESULTS:
| (77 59) | (2 -23) |
| (77 53) | (-90 9) |
| (85 100) | (-90 -77) |
| (22 57) | (82 -94) |
| (84 72) | (-39 60) |
| (57 76) | (14 -94) |
| (2 92) | (-52 -63) |
| (38 73) | (42 -39) |
| (4 93) | (-93 41) |
| (79 56) | (27 -13) |
| (20 5) | (-10 -68) |
| (51 94) | (38 -2) |
| (15 5) | (-93 -68) |
| (4 49) | (56 6) |
| (37 78) | (1 63) |
| (46 60) | (-18 70) |
| (19 47) | (-96 54) |
| (79 83) | (21 -26) |
| (77 59) | (82 -86) |
| (27 40) | (-51 24) |
| (84 68) | (-88 -72) |
| (59 60) | (-22 18) |
| (66 67) | (-88 24) |
| (64 101) | (-67 86) |
| (13 44) | (-53 -68) |
| (44 53) | (-80 34) |
| (31 71) | (27 -25) |
| (98 71) | (90 78) |
| (25 60) | (-19 -47) |
| (64 59) | (-56 -16) |
| (67 23) | (-63 72) |
| (85 36) | (-99 -5) |
| (89 64) | (-81 -13) |
| (71 33) | (-7 -18) |
| (30 75) | (27 74) |
| (51 86) | (42 50) |
| (35 3) | (-41 17) |
| (67 7) | (52 44) |
| (71 6) | (-40 21) |
| (49 51) | (-18 -32) |
| (77 22) | (-95 86) |
| (72 16) | (-49 63) |
| (96 11) | (-38 7) |
| (26 44) | (82 -4) |
| (36 5) | (42 24) |
| (20 13) | (45 30) |
| (47 23) | (8 -87) |
| (24 99) | (13 -77) |
| (2 66) | (58 70) |
| (61 86) | (99 81) |
| (42 67) | (20 80) |
| (69 80) | (1 -15) |
| (1 10) | (85 -55) |
| (68 95) | (-16 16) |
| (87 16) | (2 -17) |
| (71 27) | (-73 14) |
| (36 57) | (-82 83) |
| (0 6) | (21 68) |
| (41 67) | (-41 -99) |
| (52 60) | (-52 -47) |
| (11 32) | (-93 34) |
| (31 27) | (64 53) |
| (52 84) | (-73 36) |
| (2 85) | (-62 46) |
| (40 54) | (-97 -61) |
| (59 58) | (-22 -70) |
| (64 23) | (-87 -15) |
| (42 34) | (-36 -44) |
| (43 42) | (37 82) |
| (40 75) | (-13 98) |
| (65 18) | (38 -17) |
| (53 51) | (-17 -70) |
| (62 5) | (-91 7) |
| (75 28) | (-19 -43) |
| (87 101) | (-16 -2) |
| (99 56) | (58 84) |
| (69 101) | (89 -77) |
| (5 12) | (91 -97) |
| (34 35) | (-14 62) |
| (52 87) | (85 -33) |
| (18 13) | (86 -40) |
| (51 37) | (55 61) |
| (57 94) | (-13 -44) |
| (87 100) | (-3 -13) |
| (22 2) | (25 38) |
| (8 97) | (-43 30) |
| (55 27) | (14 -59) |
| (33 13) | (68 -32) |
| (97 55) | (-18 -14) |
| (33 60) | (45 60) |
| (88 29) | (-99 -31) |
| (84 93) | (66 66) |
| (28 83) | (31 27) |
| (32 52) | (-69 -14) |
| (100 93) | (80 92) |
| (72 87) | (44 -32) |
| (74 61) | (11 -52) |
| (39 67) | (-14 37) |
| (67 92) | (-17 -91) |
| (26 26) | (38 -55) |
| (50 15) | (19 36) |
| (52 57) | (46 50) |
| (78 19) | (48 -78) |
| (56 42) | (-68 15) |
| (43 17) | (14 48) |
| (5 17) | (-94 95) |
| (56 13) | (-49 7) |
| (41 66) | (92 -1) |
| (9 82) | (44 -10) |
| (92 33) | (-16 66) |
| (55 92) | (-45 50) |
| (72 76) | (-68 -85) |
| (40 69) | (4 -85) |
| (29 84) | (54 8) |
| (53 42) | (-27 -4) |
| (32 80) | (-44 66) |
| (87 3) | (53 -86) |
| (0 48) | (-24 14) |
| (76 84) | (25 55) |
| (27 17) | (-14 72) |
| (38 68) | (-82 54) |
| (60 91) | (47 12) |
| (74 17) | (-90 -73) |
| (87 79) | (75 97) |
| (73 70) | (-33 76) |
| (21 83) | (66 17) |
| (14 29) | (12 29) |
| (61 38) | (-40 15) |
| (0 59) | (-86 3) |
| (27 19) | (27 -13) |
| (14 37) | (4 14) |
| (97 17) | (2 -59) |
| (66 80) | (-99 85) |
| (1 28) | (49 95) |
| (28 99) | (4 7) |
| (81 34) | (11 1) |
| (8 63) | (67 33) |
| (77 20) | (-79 -34) |
| (76 92) | (66 -40) |
| (1 54) | (3 -56) |
| (15 66) | (73 -21) |
| (86 45) | (33 -95) |
| (94 35) | (59 -49) |
| (22 9) | (-10 -3) |
| (34 69) | (18 14) |
| (99 45) | (12 89) |
| (86 34) | (94 94) |
| (87 16) | (91 70) |
| (55 24) | (-48 -21) |
| (75 44) | (-35 66) |
| (85 77) | (66 -80) |
| (30 72) | (60 98) |
| (3 30) | (-86 -18) |
| (24 60) | (-61 -10) |
| (34 88) | (41 -20) |
| (0 54) | (-66 28) |
| (85 69) | (69 -5) |
| (52 24) | (-60 3) |
| (90 95) | (22 -81) |
| (9 90) | (-75 59) |
| (78 78) | (-76 -90) |
| (66 61) | (-95 32) |
| (24 70) | (-56 -71) |
| (89 48) | (-80 -98) |
| (74 7) | (-61 77) |
| (51 66) | (-50 -1) |
| (90 37) | (-58 20) |
| (46 49) | (5 98) |
| (95 0) | (57 -58) |
| (44 6) | (79 -31) |
| (41 53) | (-45 -2) |
| (9 23) | (-6 -27) |
| (35 69) | (-92 -99) |
| (59 39) | (-30 -76) |
| (23 36) | (-44 -82) |
| (61 39) | (-39 -68) |
| (3 3) | (-51 40) |
| (23 79) | (-19 -11) |
| (49 83) | (47 40) |
| (84 64) | (-39 56) |
| (57 91) | (19 17) |
| (60 43) | (-73 73) |
| (54 16) | (51 72) |
| (54 10) | (-92 -99) |
| (48 62) | (42 84) |
| (45 42) | (42 -18) |
| (72 99) | (86 48) |
| (39 76) | (-9 -57) |
| (83 61) | (-85 65) |
| (67 80) | (98 -90) |
| (28 27) | (-70 -37) |
| (68 9) | (-40 34) |
| (39 5) | (78 -40) |
| (10 90) | (43 -86) |
| (49 29) | (-8 39) |
| (79 54) | (-8 -42) |
| (79 71) | (-90 69) |
| (100 50) | (35 28) |
| (48 84) | (14 -85) |
| (58 12) | (98 -26) |
| (48 26) | (35 58) |
| (40 11) | (78 -50) |
| (82 51) | (71 -14) |
| (52 4) | (-1 -77) |
| (47 102) | (14 -68) |
| (16 46) | (-47 -9) |
| (14 63) | (95 9) |
| (83 39) | (-34 -88) |
| (2 51) | (-95 77) |
| (57 20) | (-9 25) |
| (87 1) | (90 -11) |
| (55 40) | (-95 -83) |
| (96 60) | (-2 -9) |
| (86 12) | (58 70) |
| (54 57) | (33 37) |
| (16 88) | (-91 -83) |
| (56 13) | (39 -38) |
| (70 21) | (84 11) |
| (4 17) | (90 -17) |
| (45 18) | (-50 -50) |
| (77 7) | (-63 -88) |
| (2 59) | (-54 -59) |
| (62 81) | (-22 8) |
| (72 55) | (75 -47) |
| (62 55) | (32 27) |
| (57 56) | (-77 -89) |
| (99 61) | (-54 65) |
| (73 8) | (-81 -12) |
| (12 96) | (-55 15) |
| (44 41) | (8 30) |
| (96 53) | (35 19) |
| (26 65) | (64 -38) |
| (14 85) | (15 45) |
| (98 3) | (-2 35) |
| (3 91) | (-56 -7) |
| (48 6) | (-18 -44) |
| (60 98) | (33 21) |
| (43 45) | (-28 -60) |
| (38 71) | (-46 13) |
| (71 19) | (-86 -45) |
| (99 48) | (31 61) |
| (58 29) | (52 -31) |
| (65 94) | (52 -12) |
| (22 22) | (78 -78) |
| (98 62) | (83 -11) |
| (76 74) | (-72 93) |
| (19 82) | (-39 58) |
| (72 81) | (-9 41) |
| (85 92) | (-62 17) |
| (10 4) | (5 -61) |
| (70 49) | (-40 79) |
| (4 21) | (81 -31) |
| (99 8) | (67 44) |
| (85 34) | (-34 -19) |
| (1 31) | (19 -19) |
| (71 101) | (-12 -77) |
| (15 81) | (-24 -90) |
| (83 79) | (-17 -52) |
| (48 91) | (97 -11) |
| (51 57) | (-18 -5) |
| (34 25) | (-92 25) |
| (50 8) | (-96 -96) |
| (71 5) | (94 86) |
| (16 49) | (25 -88) |
| (45 2) | (-37 39) |
| (43 23) | (-79 67) |
| (36 41) | (-73 70) |
| (42 45) | (-26 -22) |
| (29 100) | (4 -55) |
| (60 98) | (-40 -27) |
| (57 21) | (-7 -58) |
| (96 22) | (21 -60) |
| (36 97) | (-43 -1) |
| (1 94) | (-94 91) |
| (45 60) | (-78 37) |
| (27 6) | (85 -51) |
| (48 12) | (64 71) |
| (89 75) | (-81 8) |
| (76 51) | (-21 14) |
| (71 13) | (20 -13) |
| (90 9) | (43 -31) |
| (33 4) | (-69 31) |
| (54 65) | (-31 84) |
| (61 87) | (56 -67) |
| (34 42) | (-92 61) |
| (2 5) | (-43 58) |
| (44 2) | (55 -63) |
| (66 50) | (-89 76) |
| (24 77) | (-95 -71) |
| (15 11) | (97 -88) |
| (95 58) | (6 14) |
| (70 72) | (-8 -57) |
| (30 84) | (68 44) |
| (8 67) | (-84 -19) |
| (54 44) | (-59 -91) |
| (69 42) | (-8 -93) |
| (40 27) | (-18 -13) |
| (17 38) | (-20 -93) |
| (79 37) | (66 -51) |
| (77 10) | (52 48) |
| (18 77) | (85 71) |
| (45 2) | (48 15) |
| (93 98) | (26 53) |
| (97 57) | (44 52) |
| (91 80) | (94 83) |
| (71 54) | (-5 91) |
| (32 33) | (87 76) |
| (21 59) | (31 56) |
| (76 78) | (-30 -66) |
| (39 45) | (-87 90) |
| (46 84) | (-50 -76) |
| (65 102) | (-77 -30) |
| (5 46) | (-75 -84) |
| (5 33) | (-94 6) |
| (6 50) | (-51 -94) |
| (74 26) | (-58 -27) |
| (29 62) | (26 -32) |
| (18 89) | (87 -63) |
| (66 31) | (-94 46) |
| (23 27) | (-42 67) |
| (47 36) | (-87 -88) |
| (11 92) | (-75 -76) |
| (9 51) | (-1 19) |
| (52 0) | (28 -35) |
| (68 72) | (-63 10) |
| (41 46) | (-32 75) |
| (99 42) | (99 94) |
| (98 29) | (3 45) |
| (61 69) | (-45 -52) |
| (50 66) | (66 8) |
| (3 41) | (40 71) |
| (83 45) | (-85 -23) |
| (0 34) | (3 -93) |
| (54 49) | (88 -23) |
| (65 50) | (57 -38) |
| (37 34) | (38 -86) |
| (100 77) | (13 -23) |
| (80 39) | (-13 32) |
| (31 102) | (-1 16) |
| (62 64) | (15 9) |
| (48 13) | (-73 -87) |
| (69 19) | (-95 16) |
| (50 89) | (75 -85) |
| (45 33) | (-96 -37) |
| (13 75) | (77 60) |
| (17 43) | (91 -41) |
| (17 99) | (45 -86) |
| (68 20) | (40 66) |
| (47 11) | (-37 -12) |
| (64 85) | (56 2) |
| (46 30) | (92 43) |
| (84 57) | (-99 -14) |
| (55 18) | (46 -46) |
| (42 87) | (64 -34) |
| (94 96) | (57 16) |
| (20 14) | (-24 2) |
| (52 44) | (33 -9) |
| (4 95) | (7 -76) |
| (99 25) | (-74 87) |
| (78 31) | (95 -69) |
| (79 21) | (-55 32) |
| (20 25) | (68 15) |
| (77 102) | (2 -82) |
| (45 29) | (-91 -31) |
| (10 55) | (19 55) |
| (74 0) | (75 -92) |
| (38 64) | (-23 70) |
| (10 99) | (58 -65) |
| (8 73) | (97 41) |
| (43 26) | (32 66) |
| (73 96) | (20 -91) |
| (30 27) | (-81 77) |
| (13 0) | (-38 -82) |
| (18 37) | (-42 15) |
| (57 40) | (19 43) |
| (25 68) | (82 32) |
| (10 2) | (-80 -59) |
| (0 85) | (12 -86) |
| (60 18) | (68 21) |
| (39 86) | (-69 -53) |
| (98 0) | (26 -35) |
| (58 17) | (1 -69) |
| (38 44) | (-65 -86) |
| (24 28) | (-47 -45) |
| (20 27) | (9 -23) |
| (0 65) | (77 -15) |
| (95 71) | (94 78) |
| (68 77) | (93 55) |
| (77 3) | (-42 17) |
| (94 4) | (53 68) |
| (97 28) | (-29 -9) |
| (54 84) | (50 67) |
| (81 70) | (21 -52) |
| (68 10) | (46 99) |
| (29 34) | (-88 -64) |
| (79 77) | (80 -6) |
| (54 66) | (-13 -52) |
| (67 50) | (7 60) |
| (20 1) | (32 -96) |
| (29 4) | (-83 49) |
| (70 35) | (70 -13) |
| (59 40) | (-22 80) |
| (73 47) | (-3 66) |
| (88 13) | (85 -36) |
| (21 80) | (55 64) |
| (37 28) | (-32 -97) |
| (88 0) | (98 73) |
| (68 59) | (29 -14) |
| (90 87) | (62 31) |
| (76 13) | (11 -31) |
| (19 23) | (44 97) |
| (25 46) | (77 -66) |
| (95 41) | (70 -63) |
| (4 11) | (35 -54) |
| (83 30) | (-23 -31) |
| (0 26) | (-97 53) |
| (29 96) | (73 21) |
| (5 51) | (81 28) |
| (85 41) | (-62 -37) |
| (60 22) | (-45 -13) |
| (96 27) | (81 80) |
| (46 37) | (-73 71) |
| (46 30) | (65 19) |
| (79 98) | (-12 -63) |
| (99 33) | (-95 -45) |
| (77 47) | (-44 -27) |
| (48 97) | (-18 -44) |
| (77 78) | (-2 11) |
| (87 52) | (-44 5) |
| (4 68) | (-15 23) |
| (12 47) | (-79 5) |
| (5 58) | (26 -61) |
| (35 30) | (-84 17) |
| (45 73) | (19 -33) |
| (10 102) | (-97 -49) |
| (70 67) | (75 9) |
| (42 34) | (9 -41) |
| (12 37) | (75 39) |
| (1 5) | (-66 96) |
| (78 60) | (-48 -5) |
| (3 81) | (40 -15) |
| (64 51) | (20 -23) |
| (19 27) | (91 44) |
| (66 4) | (43 40) |
| (54 20) | (43 -17) |
| (19 51) | (54 19) |
| (97 70) | (-15 -47) |
| (63 91) | (-6 -43) |
| (72 50) | (-72 14) |
| (48 29) | (70 86) |
| (69 19) | (-26 95) |
| (36 36) | (50 76) |
| (51 2) | (-50 -54) |
| (24 39) | (-78 -18) |
| (50 89) | (65 -2) |
| (27 34) | (-51 -65) |
| (0 48) | (-7 -80) |
| (12 58) | (8 51) |
| (0 86) | (26 82) |
| (15 92) | (-79 -40) |
| (59 69) | (37 -62) |
| (17 72) | (10 28) |
| (76 42) | (-90 99) |
| (59 45) | (-22 32) |
| (59 45) | (-31 -51) |
| (98 32) | (-29 47) |
| (15 89) | (-1 -58) |
| (23 90) | (22 36) |
| (31 91) | (50 50) |
| (20 69) | (-1 27) |
| (18 80) | (36 74) |
| (39 45) | (82 -88) |
| (42 44) | (37 5) |
| (37 69) | (-64 -80) |
| (32 70) | (55 32) |
| (96 102) | (62 12) |
| (48 42) | (-76 -41) |
| (47 65) | (14 -6) |
| (27 97) | (25 12) |
| (55 69) | (-55 22) |
| (17 76) | (1 -61) |
| (43 28) | (28 6) |
| (29 25) | (73 -41) |
| (64 10) | (34 -96) |
| (63 41) | (93 15) |
| (3 9) | (-52 77) |
| (61 100) | (43 -5) |
| (54 24) | (6 -79) |
| (89 75) | (44 -85) |
| (79 61) | (-90 -94) |
| (99 102) | (-70 35) |
| (39 65) | (-78 4) |
| (5 19) | (63 71) |
| (93 101) | (35 -44) |
| (5 26) | (31 -80) |
| (27 51) | (80 37) |
| (62 88) | (-51 -77) |
| (75 71) | (-12 27) |
| (74 45) | (66 33) |
| (22 42) | (34 67) |
#+begin_src emacs-lisp
(defun move (p v)
(list (mod (+ (car p) (* 100 (car v))) w)
(mod (+ (cadr p) (* 100 (cadr v))) h)))
(setq newpos (--map (move (car it) (cadr it)) data))
(defun quadrant (comp p)
(and (funcall (car comp) (car p) (floor (* w 0.5)))
(funcall (cadr comp) (cadr p) (floor (* h 0.5)))))
(-reduce '* (--map (length (-filter (lambda (x) (quadrant it x)) newpos)) '((< <) (< >) (> <) (> >))))
)
#+end_src
#+RESULTS:
: 231852216
the second part is... meh. try and filter frames and check them
#+begin_src emacs-lisp
(defun flip (p)
(list (- w (car p) 1) (cadr p)))
(defun symmetric-p (li)
(eq (length (-intersection li (-map #'flip li))) (length li)))
#+end_src
Loading…
Cancel
Save