41 lines
755 B
Python
41 lines
755 B
Python
#!/usr/bin/env python3
|
|
# -*- coding: utf-8 -*-
|
|
|
|
dic = {}
|
|
rl = ""
|
|
source = "AAA"
|
|
dest = "ZZZ"
|
|
counter = 0
|
|
|
|
# parse input
|
|
input_file = open("input", "r")
|
|
for line in input_file:
|
|
line = line.strip()
|
|
if line == "":
|
|
continue
|
|
elif "=" in line:
|
|
line = line.split("=")
|
|
dic[line[0].strip()] = line[1].replace("(", "").replace(")", "").replace(" ", "").split(",")
|
|
else:
|
|
rl = line
|
|
input_file.close()
|
|
|
|
|
|
def left_or_right(zahl):
|
|
i = zahl % len(rl)
|
|
return rl[i]
|
|
|
|
|
|
while source != dest:
|
|
x = left_or_right(counter)
|
|
counter += 1
|
|
if x == "R":
|
|
source = dic[source][1]
|
|
elif x == "L":
|
|
source = dic[source][0]
|
|
|
|
print(source, dest)
|
|
print(rl)
|
|
print(dic)
|
|
print(f"Lösungschritte: {counter}")
|