diff options
| author | blenovo <bk@gmail.com> | 2025-08-16 00:38:26 +0200 |
|---|---|---|
| committer | blenovo <bk@gmail.com> | 2025-08-16 00:38:26 +0200 |
| commit | f6ff66ea2da1f30303f17a2dac341411fb325881 (patch) | |
| tree | 934b79fc762547e474a5277723c0c5087b56698f /2018/aoc2018-d11-1.py | |
| parent | edf82358166db84f74419f9a83d328390cc6b356 (diff) | |
final puzzle and little cleanup for 2018blen
Diffstat (limited to '2018/aoc2018-d11-1.py')
| -rwxr-xr-x | 2018/aoc2018-d11-1.py | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/2018/aoc2018-d11-1.py b/2018/aoc2018-d11-1.py deleted file mode 100755 index 2379c3c..0000000 --- a/2018/aoc2018-d11-1.py +++ /dev/null @@ -1,75 +0,0 @@ -#advent of code 2018
-#day 11
-#part 1
-
-#setup
-GridSize = 300;
-SquareSize = 3;
-fcserialnumber = int(open("input.txt",'r').readline());
-
-testing = False;
-#testing = True;
-if testing:
- fcserialnumber = 42; #18=>33,45 ; 42 => 21,61;
-
-class fuelcell:
- def __init__(self, x, y, serialnumber):
- self.positionX = x;
- self.positionY = y;
- self.rackID = self.positionX + 10;
- self.powerlevel = self.rackID * self.positionY;
- self.powerlevel += serialnumber;
- self.powerlevel *= self.rackID;
- self.powerlevel = self.powerlevel//100;
- self.powerlevel = self.powerlevel%10;
- self.powerlevel -= 5;
- def coords(self):
- print(f'Fuel Cell coordinates (x,y): {self.positionX},{self.positionY} ');
- def __str__(self):
- return f'{self.powerlevel}';
-
-'''
-testinput = [[3,5,8],[122,79,57],[217,196,39],[101,153,71]];
-
-for t in testinput:
- dummycell = fuelcell(t[0],t[1],t[2]);
- print(t, " -> ",dummycell.powerlevel);
- dummycell.coords();
-
-print("#############################");
-print();
-'''
-
-fcgrid = [];
-gridline = [];
-
-for Y in range(GridSize):
- gridline.clear();
- for X in range(GridSize):
- gridline.append(fuelcell(X+1,Y+1,fcserialnumber));
- fcgrid.append(gridline.copy());
-
-maxpower = -999; #negative power just to start the algorythm
-maxX = 0;
-maxY = 0;
-powernow = 0;
-
-for Y in range(GridSize-SquareSize+1):
- for X in range(GridSize-SquareSize+1):
- powernow = 0;
- for sy in range(SquareSize):
- for sx in range(SquareSize):
- powernow += fcgrid[Y+sy][X+sx].powerlevel;
- if (powernow > maxpower):
- maxpower = powernow;
- maxX = X;
- maxY = Y;
-
-#print(f'maximum found: {maxX},{maxY} => {maxpower}');
-print("part 1: ");
-fcgrid[maxY][maxX].coords();
-
-#10,300 wrong
-#9,0 wrong
-#0,9 wrong
-#33,45
|
