day 9 part 1
This commit is contained in:
parent
c200e211c9
commit
b29945625a
496
day09/input
Normal file
496
day09/input
Normal file
@ -0,0 +1,496 @@
|
|||||||
|
98292,50082
|
||||||
|
98292,51299
|
||||||
|
98041,51299
|
||||||
|
98041,52512
|
||||||
|
97933,52512
|
||||||
|
97933,53729
|
||||||
|
97891,53729
|
||||||
|
97891,54958
|
||||||
|
97948,54958
|
||||||
|
97948,56123
|
||||||
|
97437,56123
|
||||||
|
97437,57349
|
||||||
|
97434,57349
|
||||||
|
97434,58625
|
||||||
|
97658,58625
|
||||||
|
97658,59815
|
||||||
|
97354,59815
|
||||||
|
97354,61007
|
||||||
|
97068,61007
|
||||||
|
97068,62109
|
||||||
|
96444,62109
|
||||||
|
96444,63237
|
||||||
|
95967,63237
|
||||||
|
95967,64422
|
||||||
|
95696,64422
|
||||||
|
95696,65722
|
||||||
|
95742,65722
|
||||||
|
95742,66911
|
||||||
|
95424,66911
|
||||||
|
95424,67730
|
||||||
|
94169,67730
|
||||||
|
94169,69128
|
||||||
|
94366,69128
|
||||||
|
94366,70025
|
||||||
|
93389,70025
|
||||||
|
93389,71338
|
||||||
|
93314,71338
|
||||||
|
93314,72103
|
||||||
|
92139,72103
|
||||||
|
92139,73287
|
||||||
|
91787,73287
|
||||||
|
91787,74514
|
||||||
|
91481,74514
|
||||||
|
91481,75422
|
||||||
|
90632,75422
|
||||||
|
90632,76704
|
||||||
|
90368,76704
|
||||||
|
90368,77568
|
||||||
|
89464,77568
|
||||||
|
89464,78483
|
||||||
|
88650,78483
|
||||||
|
88650,79236
|
||||||
|
87637,79236
|
||||||
|
87637,80655
|
||||||
|
87465,80655
|
||||||
|
87465,81115
|
||||||
|
86119,81115
|
||||||
|
86119,82571
|
||||||
|
85928,82571
|
||||||
|
85928,83239
|
||||||
|
84848,83239
|
||||||
|
84848,84347
|
||||||
|
84231,84347
|
||||||
|
84231,84722
|
||||||
|
82893,84722
|
||||||
|
82893,85694
|
||||||
|
82138,85694
|
||||||
|
82138,86215
|
||||||
|
80982,86215
|
||||||
|
80982,87023
|
||||||
|
80083,87023
|
||||||
|
80083,87874
|
||||||
|
79213,87874
|
||||||
|
79213,88861
|
||||||
|
78434,88861
|
||||||
|
78434,89490
|
||||||
|
77386,89490
|
||||||
|
77386,90035
|
||||||
|
76288,90035
|
||||||
|
76288,90659
|
||||||
|
75247,90659
|
||||||
|
75247,91834
|
||||||
|
74530,91834
|
||||||
|
74530,91663
|
||||||
|
73032,91663
|
||||||
|
73032,92769
|
||||||
|
72247,92769
|
||||||
|
72247,93129
|
||||||
|
71065,93129
|
||||||
|
71065,93719
|
||||||
|
69997,93719
|
||||||
|
69997,94601
|
||||||
|
69050,94601
|
||||||
|
69050,94483
|
||||||
|
67680,94483
|
||||||
|
67680,94626
|
||||||
|
66441,94626
|
||||||
|
66441,95786
|
||||||
|
65563,95786
|
||||||
|
65563,95363
|
||||||
|
64148,95363
|
||||||
|
64148,96153
|
||||||
|
63120,96153
|
||||||
|
63120,96752
|
||||||
|
62020,96752
|
||||||
|
62020,96319
|
||||||
|
60665,96319
|
||||||
|
60665,96704
|
||||||
|
59514,96704
|
||||||
|
59514,96954
|
||||||
|
58333,96954
|
||||||
|
58333,97717
|
||||||
|
57226,97717
|
||||||
|
57226,97419
|
||||||
|
55957,97419
|
||||||
|
55957,97683
|
||||||
|
54766,97683
|
||||||
|
54766,97392
|
||||||
|
53527,97392
|
||||||
|
53527,97506
|
||||||
|
52328,97506
|
||||||
|
52328,97750
|
||||||
|
51128,97750
|
||||||
|
51128,97884
|
||||||
|
49918,97884
|
||||||
|
49918,98455
|
||||||
|
48689,98455
|
||||||
|
48689,97950
|
||||||
|
47486,97950
|
||||||
|
47486,97626
|
||||||
|
46291,97626
|
||||||
|
46291,97900
|
||||||
|
45046,97900
|
||||||
|
45046,97981
|
||||||
|
43806,97981
|
||||||
|
43806,97693
|
||||||
|
42610,97693
|
||||||
|
42610,97475
|
||||||
|
41407,97475
|
||||||
|
41407,96948
|
||||||
|
40268,96948
|
||||||
|
40268,96341
|
||||||
|
39162,96341
|
||||||
|
39162,95987
|
||||||
|
38009,95987
|
||||||
|
38009,96196
|
||||||
|
36696,96196
|
||||||
|
36696,95887
|
||||||
|
35516,95887
|
||||||
|
35516,94958
|
||||||
|
34547,94958
|
||||||
|
34547,95161
|
||||||
|
33186,95161
|
||||||
|
33186,94474
|
||||||
|
32146,94474
|
||||||
|
32146,93686
|
||||||
|
31164,93686
|
||||||
|
31164,93591
|
||||||
|
29880,93591
|
||||||
|
29880,93365
|
||||||
|
28636,93365
|
||||||
|
28636,92868
|
||||||
|
27514,92868
|
||||||
|
27514,91996
|
||||||
|
26595,91996
|
||||||
|
26595,91248
|
||||||
|
25623,91248
|
||||||
|
25623,90405
|
||||||
|
24719,90405
|
||||||
|
24719,89965
|
||||||
|
23562,89965
|
||||||
|
23562,89216
|
||||||
|
22605,89216
|
||||||
|
22605,88794
|
||||||
|
21410,88794
|
||||||
|
21410,87854
|
||||||
|
20595,87854
|
||||||
|
20595,87135
|
||||||
|
19614,87135
|
||||||
|
19614,86044
|
||||||
|
18949,86044
|
||||||
|
18949,85497
|
||||||
|
17819,85497
|
||||||
|
17819,84807
|
||||||
|
16800,84807
|
||||||
|
16800,83553
|
||||||
|
16331,83553
|
||||||
|
16331,83087
|
||||||
|
15072,83087
|
||||||
|
15072,81979
|
||||||
|
14481,81979
|
||||||
|
14481,81230
|
||||||
|
13494,81230
|
||||||
|
13494,80364
|
||||||
|
12631,80364
|
||||||
|
12631,79438
|
||||||
|
11834,79438
|
||||||
|
11834,78320
|
||||||
|
11294,78320
|
||||||
|
11294,77350
|
||||||
|
10561,77350
|
||||||
|
10561,76275
|
||||||
|
9983,76275
|
||||||
|
9983,75427
|
||||||
|
9049,75427
|
||||||
|
9049,74517
|
||||||
|
8187,74517
|
||||||
|
8187,73207
|
||||||
|
8020,73207
|
||||||
|
8020,71987
|
||||||
|
7731,71987
|
||||||
|
7731,71263
|
||||||
|
6464,71263
|
||||||
|
6464,70095
|
||||||
|
6066,70095
|
||||||
|
6066,68916
|
||||||
|
5711,68916
|
||||||
|
5711,67727
|
||||||
|
5399,67727
|
||||||
|
5399,66691
|
||||||
|
4694,66691
|
||||||
|
4694,65298
|
||||||
|
4992,65298
|
||||||
|
4992,64223
|
||||||
|
4395,64223
|
||||||
|
4395,63008
|
||||||
|
4243,63008
|
||||||
|
4243,61887
|
||||||
|
3762,61887
|
||||||
|
3762,60810
|
||||||
|
3049,60810
|
||||||
|
3049,59627
|
||||||
|
2745,59627
|
||||||
|
2745,58451
|
||||||
|
2377,58451
|
||||||
|
2377,57232
|
||||||
|
2245,57232
|
||||||
|
2245,55998
|
||||||
|
2255,55998
|
||||||
|
2255,54788
|
||||||
|
2103,54788
|
||||||
|
2103,53599
|
||||||
|
1645,53599
|
||||||
|
1645,52353
|
||||||
|
1980,52353
|
||||||
|
1980,51122
|
||||||
|
2484,51122
|
||||||
|
2484,50076
|
||||||
|
94607,50076
|
||||||
|
94607,48713
|
||||||
|
2419,48713
|
||||||
|
2419,47502
|
||||||
|
2367,47502
|
||||||
|
2367,46305
|
||||||
|
2556,46305
|
||||||
|
2556,45069
|
||||||
|
2319,45069
|
||||||
|
2319,43868
|
||||||
|
2503,43868
|
||||||
|
2503,42604
|
||||||
|
2271,42604
|
||||||
|
2271,41378
|
||||||
|
2366,41378
|
||||||
|
2366,40243
|
||||||
|
2932,40243
|
||||||
|
2932,39158
|
||||||
|
3637,39158
|
||||||
|
3637,37993
|
||||||
|
3952,37993
|
||||||
|
3952,36700
|
||||||
|
3817,36700
|
||||||
|
3817,35502
|
||||||
|
4067,35502
|
||||||
|
4067,34405
|
||||||
|
4628,34405
|
||||||
|
4628,33233
|
||||||
|
4965,33233
|
||||||
|
4965,32219
|
||||||
|
5706,32219
|
||||||
|
5706,30966
|
||||||
|
5853,30966
|
||||||
|
5853,30059
|
||||||
|
6796,30059
|
||||||
|
6796,28764
|
||||||
|
6895,28764
|
||||||
|
6895,27555
|
||||||
|
7210,27555
|
||||||
|
7210,26525
|
||||||
|
7877,26525
|
||||||
|
7877,25807
|
||||||
|
9062,25807
|
||||||
|
9062,24416
|
||||||
|
9111,24416
|
||||||
|
9111,23301
|
||||||
|
9639,23301
|
||||||
|
9639,22495
|
||||||
|
10627,22495
|
||||||
|
10627,21248
|
||||||
|
10985,21248
|
||||||
|
10985,20458
|
||||||
|
11969,20458
|
||||||
|
11969,19850
|
||||||
|
13153,19850
|
||||||
|
13153,18527
|
||||||
|
13465,18527
|
||||||
|
13465,17780
|
||||||
|
14460,17780
|
||||||
|
14460,16736
|
||||||
|
15125,16736
|
||||||
|
15125,16113
|
||||||
|
16229,16113
|
||||||
|
16229,15375
|
||||||
|
17198,15375
|
||||||
|
17198,14067
|
||||||
|
17646,14067
|
||||||
|
17646,13204
|
||||||
|
18520,13204
|
||||||
|
18520,12766
|
||||||
|
19745,12766
|
||||||
|
19745,11706
|
||||||
|
20463,11706
|
||||||
|
20463,11476
|
||||||
|
21812,11476
|
||||||
|
21812,10306
|
||||||
|
22472,10306
|
||||||
|
22472,9799
|
||||||
|
23603,9799
|
||||||
|
23603,9481
|
||||||
|
24840,9481
|
||||||
|
24840,8594
|
||||||
|
25721,8594
|
||||||
|
25721,8321
|
||||||
|
26959,8321
|
||||||
|
26959,7306
|
||||||
|
27791,7306
|
||||||
|
27791,6632
|
||||||
|
28818,6632
|
||||||
|
28818,6289
|
||||||
|
30006,6289
|
||||||
|
30006,5752
|
||||||
|
31101,5752
|
||||||
|
31101,5616
|
||||||
|
32358,5616
|
||||||
|
32358,4838
|
||||||
|
33361,4838
|
||||||
|
33361,4326
|
||||||
|
34475,4326
|
||||||
|
34475,4414
|
||||||
|
35782,4414
|
||||||
|
35782,3495
|
||||||
|
36779,3495
|
||||||
|
36779,3373
|
||||||
|
38012,3373
|
||||||
|
38012,2815
|
||||||
|
39135,2815
|
||||||
|
39135,3440
|
||||||
|
40514,3440
|
||||||
|
40514,2709
|
||||||
|
41607,2709
|
||||||
|
41607,2818
|
||||||
|
42854,2818
|
||||||
|
42854,1922
|
||||||
|
43960,1922
|
||||||
|
43960,1884
|
||||||
|
45189,1884
|
||||||
|
45189,2138
|
||||||
|
46437,2138
|
||||||
|
46437,2264
|
||||||
|
47660,2264
|
||||||
|
47660,1956
|
||||||
|
48864,1956
|
||||||
|
48864,1579
|
||||||
|
50082,1579
|
||||||
|
50082,1956
|
||||||
|
51299,1956
|
||||||
|
51299,1669
|
||||||
|
52533,1669
|
||||||
|
52533,1656
|
||||||
|
53764,1656
|
||||||
|
53764,2349
|
||||||
|
54927,2349
|
||||||
|
54927,2193
|
||||||
|
56171,2193
|
||||||
|
56171,3042
|
||||||
|
57275,3042
|
||||||
|
57275,2822
|
||||||
|
58538,2822
|
||||||
|
58538,2858
|
||||||
|
59771,2858
|
||||||
|
59771,3154
|
||||||
|
60954,3154
|
||||||
|
60954,3953
|
||||||
|
62006,3953
|
||||||
|
62006,4034
|
||||||
|
63237,4034
|
||||||
|
63237,4422
|
||||||
|
64385,4422
|
||||||
|
64385,4471
|
||||||
|
65649,4471
|
||||||
|
65649,5053
|
||||||
|
66733,5053
|
||||||
|
66733,5422
|
||||||
|
67894,5422
|
||||||
|
67894,5800
|
||||||
|
69056,5800
|
||||||
|
69056,6313
|
||||||
|
70162,6313
|
||||||
|
70162,6949
|
||||||
|
71208,6949
|
||||||
|
71208,7281
|
||||||
|
72406,7281
|
||||||
|
72406,8118
|
||||||
|
73339,8118
|
||||||
|
73339,8878
|
||||||
|
74301,8878
|
||||||
|
74301,9110
|
||||||
|
75583,9110
|
||||||
|
75583,9760
|
||||||
|
76618,9760
|
||||||
|
76618,10542
|
||||||
|
77562,10542
|
||||||
|
77562,11459
|
||||||
|
78402,11459
|
||||||
|
78402,11839
|
||||||
|
79642,11839
|
||||||
|
79642,12591
|
||||||
|
80609,12591
|
||||||
|
80609,13867
|
||||||
|
81126,13867
|
||||||
|
81126,14279
|
||||||
|
82382,14279
|
||||||
|
82382,15350
|
||||||
|
83049,15350
|
||||||
|
83049,15940
|
||||||
|
84176,15940
|
||||||
|
84176,16870
|
||||||
|
84971,16870
|
||||||
|
84971,17882
|
||||||
|
85671,17882
|
||||||
|
85671,18636
|
||||||
|
86660,18636
|
||||||
|
86660,19524
|
||||||
|
87505,19524
|
||||||
|
87505,20842
|
||||||
|
87801,20842
|
||||||
|
87801,21454
|
||||||
|
89013,21454
|
||||||
|
89013,22634
|
||||||
|
89459,22634
|
||||||
|
89459,23916
|
||||||
|
89724,23916
|
||||||
|
89724,24675
|
||||||
|
90783,24675
|
||||||
|
90783,25871
|
||||||
|
91149,25871
|
||||||
|
91149,26864
|
||||||
|
91850,26864
|
||||||
|
91850,27747
|
||||||
|
92777,27747
|
||||||
|
92777,29088
|
||||||
|
92815,29088
|
||||||
|
92815,29845
|
||||||
|
94062,29845
|
||||||
|
94062,31020
|
||||||
|
94436,31020
|
||||||
|
94436,32266
|
||||||
|
94616,32266
|
||||||
|
94616,33501
|
||||||
|
94782,33501
|
||||||
|
94782,34499
|
||||||
|
95601,34499
|
||||||
|
95601,35767
|
||||||
|
95634,35767
|
||||||
|
95634,36965
|
||||||
|
95849,36965
|
||||||
|
95849,38021
|
||||||
|
96591,38021
|
||||||
|
96591,39160
|
||||||
|
97075,39160
|
||||||
|
97075,40461
|
||||||
|
96820,40461
|
||||||
|
96820,41594
|
||||||
|
97362,41594
|
||||||
|
97362,42761
|
||||||
|
97798,42761
|
||||||
|
97798,44061
|
||||||
|
97274,44061
|
||||||
|
97274,45271
|
||||||
|
97302,45271
|
||||||
|
97302,46441
|
||||||
|
97806,46441
|
||||||
|
97806,47663
|
||||||
|
97683,47663
|
||||||
|
97683,48874
|
||||||
|
97612,48874
|
||||||
|
97612,50082
|
||||||
8
day09/sample
Normal file
8
day09/sample
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
7,1
|
||||||
|
11,1
|
||||||
|
11,7
|
||||||
|
9,7
|
||||||
|
9,5
|
||||||
|
2,5
|
||||||
|
2,3
|
||||||
|
7,3
|
||||||
22
day09/sol.py
Normal file
22
day09/sol.py
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
from math import dist
|
||||||
|
def solve(input):
|
||||||
|
points = []
|
||||||
|
for line in open(input):
|
||||||
|
x,y = map(int, line.strip().split(","))
|
||||||
|
points.append((x,y))
|
||||||
|
|
||||||
|
def areas():
|
||||||
|
for p in points:
|
||||||
|
for q in points:
|
||||||
|
if p != q:
|
||||||
|
yield area(p,q)
|
||||||
|
|
||||||
|
print(max(areas()))
|
||||||
|
|
||||||
|
def area(p,q):
|
||||||
|
dx = abs(p[0] - q[0]) + 1
|
||||||
|
dy = abs(p[1] - q[1]) + 1
|
||||||
|
return dx*dy
|
||||||
|
|
||||||
|
solve("sample")
|
||||||
|
solve("input")
|
||||||
Loading…
x
Reference in New Issue
Block a user