Browse Source

day9 finished

main
Luna Lailatova 2 years ago
parent
commit
54f5746a8a
  1. 57
      day9-2.py

57
day9-2.py

@ -1,3 +1,39 @@ @@ -1,3 +1,39 @@
gridVisited =[['#']]
posHead = [0, 0]
posTail = []
# drawgrid only used for visualized debugging
def drawGrid():
visualGrid = []
for yCoord in range(len(gridVisited)):
visualGridLine = []
for xCoord in range(len(gridVisited[0])):
if posHead[0] == yCoord and posHead[1] == xCoord:
visualGridLine.append('H')
continue
haveAppended = False
for tp in range(9):
if posTail[tp][0] == yCoord and posTail[tp][1] == xCoord:
visualGridLine.append(str(tp+1))
haveAppended = True
break
if not haveAppended:
if gridVisited[yCoord][xCoord] == '#':
visualGridLine.append('#')
else:
visualGridLine.append('.')
visualGrid.append(visualGridLine)
for ln in visualGrid:
print("".join(ln))
input("Ready for next move?")
def expandGrid(direct):
if direct == "U":
gridVisited.insert(0, [])
@ -31,6 +67,7 @@ def checkDist(): @@ -31,6 +67,7 @@ def checkDist():
tempa = one[1] - two[1]
tempb = one[0] - two[0]
tempc = tempa + tempb
tempd = tempa * tempb
if one[0] == two[0]:
if not(tempa == 1 or tempa == -1):
if tempa > 0:
@ -43,28 +80,28 @@ def checkDist(): @@ -43,28 +80,28 @@ def checkDist():
posTail[z][0] += 1
elif tempb < 0:
posTail[z][0] -= 1
elif (tempc == -1 or tempc == 1) and tempb < 0:
elif (tempc in [-1, 0, 1]) and tempb < 0 and tempd != -1:
posTail[z][0] -= 1
posTail[z][1] += 1
elif tempc == 3:
elif tempc in [3, 4]:
posTail[z][0] += 1
posTail[z][1] += 1
elif (tempc == -1 or tempc == 1) and tempb > 0:
elif (tempc in [-1, 0, 1]) and tempb > 0 and tempd != -1:
posTail[z][0] += 1
posTail[z][1] -= 1
elif tempc == -3:
elif tempc in [-4, -3]:
posTail[z][0] -= 1
posTail[z][1] -= 1
print(posTail[8])
# print(posTail[8])
gridVisited[posTail[8][0]][posTail[8][1]] = '#'
gridVisited =[['#']]
posHead = [0, 0]
posTail = []
for z in range(9):
# drawGrid()
for _ in range(9):
posTail.append([0,0])
with open('in.txt','r') as f:
with open('input9.txt','r') as f:
inp = f.read().splitlines(keepends=False)
direction = []

Loading…
Cancel
Save