Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # bestanden lezen en in stukjes hakken:
- bestand = open('input.txt', 'r')
- alles = bestand.readlines()
- for x in range(len(alles)):
- alles[x] = alles[x].replace('\n', '')
- molecuul = list(alles[0])
- alles.pop(0)
- alles.pop(0)
- for x in range(len(alles)):
- alles[x] = alles[x].split(' -> ')
- # vertaalsleutel maken:
- sleutel = [ [] for x in range(len(alles))]
- for x in range(len(alles)):
- nieuw1 = alles[x][0][0] + alles[x][1]
- nieuw2 = alles[x][1] + alles[x][0][1]
- for y in range(len(alles)):
- if alles[y][0] == nieuw1:
- sleutel[x].append(y)
- if alles[y][0] == nieuw2:
- sleutel[x].append(y)
- # molecuul er in:
- paren = [0 for x in range(len(alles))]
- for x in range(len(molecuul)-1):
- for y in range(len(alles)):
- if molecuul[x] + molecuul[x+1] == alles[y][0]:
- paren[y] += 1
- # en nu stappen maar:
- for stap in range(40):
- nieuw = [0 for x in range(len(paren))]
- for x in range(len(paren)):
- nieuw[sleutel[x][0]] += paren[x]
- nieuw[sleutel[x][1]] += paren[x]
- paren = nieuw
- # terug vertalen:
- letters = []
- for x in range(len(alles)):
- if alles[x][0][0] not in letters:
- letters.append(alles[x][0][0])
- for x in range(len(letters)):
- letters[x] = [letters[x], 0]
- for x in range(len(letters)):
- for y in range(len(alles)):
- if letters[x][0] == alles[y][0][0]:
- letters[x][1] += paren[y]
- if letters[x][0] == molecuul[-1]:
- letters[x][1] += 1
- # tellen:
- meest = 0
- minst = 1000000000000000000000000000
- for x in range(len(letters)):
- if letters[x][1] < minst:
- minst = letters[x][1]
- if letters[x][1] > meest:
- meest = letters[x][1]
- antwoord = meest - minst
- print(antwoord)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement