AdventOfCode2023/day8-2.py
2023-12-10 16:54:38 -06:00

63 lines
1.3 KiB
Python

import time
with open("input_day8.txt") as file:
lines = [line.rstrip() for line in file]
#unused bc i am so cool
class seq:
def __init__(self,name,left,right):
self.name = name
self.left = left
self.right = right
turns = lines[0]
sequences = lines[2:]
left_dict = {}
right_dict = {}
cur_names = []
for a in sequences:
name = a.split(" ")[0]
left = a.split(" ")[2][1:4]
right = a.split(" ")[3][0:3]
left_dict[name] = left
right_dict[name] = right
if name[2] == "A":
cur_names.append(name)
i = 0
total = 0
print(cur_names)
alive = True
while alive:
count = 0
for j in range(len(cur_names)):
if cur_names[j][2] == 'Z':
count+=1
#print(cur_names[j])
#time.sleep(2)
if count==6:
alive = False
else:
for b in range(len(cur_names)):
if turns[i] == 'L':
#print(f"next {left_dict[cur_names[b]]}")
next_node_name = left_dict[cur_names[b]]
else:
next_node_name = right_dict[cur_names[b]]
cur_names[b] = next_node_name
#time.sleep(1)
i+=1
if i>=len(turns):
i = 0
total+=1
print(total)