Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from sys import stdin
- def main():
- statment = stdin.read().split('\n')
- stanja = statment[0].split(',')
- ulazniZnakovi = statment[1].split(',')
- znakoviTrake = statment[2].split(',')
- praznaCelija = statment[3]
- zapisTrake = statment[4]
- prihvatljivaStanja = statment[5].split(',')
- pocetnoStanje = statment[6]
- pocetnoGlava = int(statment[7])
- rijecnikPrijelaza = {}
- T = 1
- i = pocetnoGlava
- for prijelaz in statment[8:]:
- if (len(prijelaz) == 0):
- break
- else:
- staroStanje = prijelaz.split('->')[0].split(',')
- novoStanje = prijelaz.split('->')[1].split(',')
- rijecnikPrijelaza[tuple(staroStanje)] = tuple(novoStanje)
- while(1):
- if (pocetnoStanje, pocetnoGlava) not in rijecnikPrijelaza:
- break
- else:
- novo_stanje = rijecnikPrijelaza[pocetnoStanje, zapisTrake[pocetnoGlava]]
- pocetnoStanje = novo_stanje[0]
- pocetnoGlava = novo_stanje[1]
- zapisTrake[i]=novo_stanje[1]
- if novo_stanje[2] == 'L' and i == 0:
- break
- elif novo_stanje[2] == 'R' and i == 69:
- break
- elif novo_stanje[2] == 'L':
- i = i - 1
- else:
- i = i + 1
- if pocetnoStanje in prihvatljivaStanja:
- print(pocetnoStanje + "|" + str(pocetnoGlava) + "|" + ''.join(zapisTrake) + "|" + "0")
- else:
- print(pocetnoStanje + "|" + str(pocetnoGlava) + "|" +''.join(zapisTrake) + "|" + "1")
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement