#!/usr/bin/env python3.12 import re class RL: def __init__(self, L, R): self.directions = {} self.directions['R'] = R self.directions['L'] = L def get(self, direction): return self.directions[direction] def __str__(self): return f"L: {self.get('L')} R: {self.get('R')}" with open("data2.txt") as file: lines = [line.rstrip() for line in file] x = 0 maps = {} algused = [] for line in lines: print(line) if x == 0: instructions = line x += 1 continue if line == '': print('Tühi rida') continue temp = re.findall(r'\w+', line) z = list(temp) maps[z[0]] = RL(z[1], z[2]) if z[0][2] == 'A': print(f"Lisan alguse {z[0]}") algused.append(z[0]) print(instructions) print(algused) teemeveel = True x = 0 while teemeveel: # print(f"Samm {instructions[x % len(instructions)]} {instructions} {x}") # if x % (len(instructions)*100) == 0: # print(x) for idx, vastus in enumerate(algused): # print(algused[idx]) algused[idx] = maps[vastus].get(instructions[x % len(instructions)]) # print(algused[idx]) # print(f"Samm {x}") for i in algused: teemeveel = False # print(f"I on {i}") if i[2] != 'Z': # print('Edasi on vaja teha') teemeveel = True break # print(teemeveel) x += 1 print(x)