Gooi nu de beschadigde regels weg. De overige regels zijn onvolledig.

Onvolledige regels hebben geen verkeerd sluitende karakters - in plaats daarvan missen ze enkele sluitende karakters op het einde van de regel. Op het navigatie-subsysteem te herstellen, hoef je alleen maar de volgorde van de sluitende karakters te vinden die alle open blokken op de regel afsluiten.

Je kunt enkel de sluitende karakters (), ], }, of >) gebruiken, en je moet ze in de juiste volgorde toevoegen, zodat alleen geldige paren gevormd worden en alle blokken finaal afgesloten worden.

In het vorige voorbeeld zijn er vijf onvolledige regels:

Wist je dat tools voor automatisch aanvullen ook wedstrijden houden? Het is echt waar! De score wordt bepaald door de afsluitende reeks karakter per karakter te bekijken. Begin met een totaalscore van 0. Vermenigvuldig daarna voor elk aanvullend afsluitend karakter de totaalscore met 5 en verhoog vervolgens de totaalscore met de puntenwaarde van het karakter op basis van deze tabel:

De laatste afsluitende reeks hierboven - ])}> - zou dus als volgt gescoord worden:

De afsluitende reeksen van de vijf onvolledige regels hebben de volgende totaalscores::

Tools voor automatisch aanvullen zijn een soort apart: de winnaar wordt gevonden door alle scores te sorteren en daarna de middelste score te nemen. (Er is altijd een oneven aantal scores waarmee rekening moet gehouden worden.) In dit voorbeeld is de middelste score 288957 omdat er evenveel scores kleiner en groter zijn dan die score.

Opgave

Zoek de afsluitende reeks voor elke onvolledige regel, score de afsluitende reeksen en sorteer de scores. Wat is de middelste score? Bepaal dit op de volgende manier:

Voorbeeld

In deze interactieve sessie gaan we ervan uit dat de tekstbestanden subsystem01.txt1 en subsystem02.txt`2 zich in de huidige directory bevinden.

>>> score('subsystem01.txt')
288957
>>> score('subsystem02.txt')
1190420163