2023-3-1
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
# Inlezen hele kaart naar list-of-lists
|
||||
map = []
|
||||
with open("input.txt", "r") as f:
|
||||
for line in f.readlines():
|
||||
line = line.strip()
|
||||
map.append(list(line))
|
||||
HEIGHT = len(map)
|
||||
WIDTH = len(map[0])
|
||||
|
||||
def isSymbol(c):
|
||||
# desda karakter geen nummer of punt is
|
||||
return c != '.' and (c < '0' or c > '9')
|
||||
def toevoegen(x, y):
|
||||
# desda (x, y) aangrenzend is aan een symbool
|
||||
for xi in range(x-1, x+2):
|
||||
for yi in range(y-1, y+2):
|
||||
xi = min(max(xi, 0), WIDTH-1)
|
||||
yi = min(max(yi, 0), HEIGHT-1)
|
||||
if isSymbol(map[yi][xi]):
|
||||
return True
|
||||
return False
|
||||
|
||||
teller = 0
|
||||
nummer = 0
|
||||
adding = False
|
||||
for y in range(HEIGHT):
|
||||
for x in range(WIDTH):
|
||||
try:
|
||||
n = int(map[y][x])
|
||||
nummer *= 10
|
||||
nummer += n
|
||||
if toevoegen(x, y):
|
||||
adding = True
|
||||
except Exception as e:
|
||||
if adding:
|
||||
teller += nummer
|
||||
adding = False
|
||||
nummer = 0
|
||||
print(teller)
|
||||
Reference in New Issue
Block a user