Zeichenkettenkompression mit Wiederherstellung nach Wiederholungsregel
Go
Hard
strings
Aufgabe «Zeichenkettenkompression mit Wiederherstellung nach Wiederholungsregel»
Gegeben ist eine Zeichenkette, bestehend aus Buchstaben des lateinischen Alphabets (a-z) und Ziffern (0-9). Die Zeichenkette ist nach folgender Regel kodiert: Jede Gruppe von Zeichen, gefolgt von einer Zahl, bedeutet, dass diese Gruppe die angegebene Anzahl von Malen wiederholt werden muss. Beispielsweise bedeutet 'ab3c2' 'abababcc'. Eine Gruppe kann sowohl ein einzelnes Zeichen als auch eine in eckige Klammern eingeschlossene Zeichenfolge sein. Enthält die Gruppe keine Klammern, bezieht sich die Zahl auf das letzte Zeichen. Fehlt die Zahl, wird die Wiederholung als 1 angenommen. Es ist ein Programm zu schreiben, das eine kodierte Zeichenkette annimmt und die dekodierte Zeichenkette ausgibt. Die Länge der dekodierten Zeichenkette überschreitet nicht 10^6 Zeichen.
Eingabeformat
Eine Zeile, die die kodierte Sequenz enthält. Die Länge der Zeile überschreitet nicht 1000 Zeichen.
Ausgabeformat
Eine Zeile — die dekodierte Sequenz.
Beispiele
Beispiel 1
EINGABE
x2y3z
AUSGABE
xxyyyz
Beispiel 2
EINGABE
a2b[cd]3e
AUSGABE
aabcdcdcde
Beispiel 3
EINGABE
5
1 null root 10
2 1 child1 5
3 1 child2 7
4 2 grandchild 3
5 3 another 2
AUSGABE
main.go