Das Zuma-Spiel erstellen

Du hast dich entschieden, das Spiel Zuma zu entwickeln. Momentan arbeitest du an dem Teil, der Segmente von Bällen derselben Farbe entfernt, sobald sie aufeinandertreffen. Dazu hast du eine Liste von Bällen mit unterschiedlichen Farben, und der Spieler schießt einen Ball einer bestimmten Farbe auf eine bestimmte Position in dieser Reihe. Wenn sich an dieser Stelle mehr als zwei Bälle derselben Farbe befinden (einschließlich des vom Spieler abgeschossenen Balls), verschwindet dieses Segment, und die umliegenden Bälle schließen die entstehende Lücke.
notion image
Wenn 3 oder mehr Bälle, die aufeinandertreffen, dieselbe Farbe haben, verschwindet auch dieses Segment aus gleichfarbigen Bällen. Dieser Prozess wiederholt sich, bis die aufeinandertreffenden Segmente unterschiedliche Farben haben oder keine Bälle mehr übrig sind.

Eingabe

Die erste Zeile der Eingabe enthält einen einzelnen String b (1 ≤ |b| ≤ ), der die Bälle in der Reihe repräsentiert. Die Farben der Bälle werden durch Kleinbuchstaben des lateinischen Alphabets dargestellt (y für gelb, b für blau, r für rot usw.).
Die nächste Zeile enthält den Index i (1 ≤ i ≤ |b|), an dem der Spieler einen Ball abschießt, sowie die Farbe des Balls c (ein Kleinbuchstabe).

Ausgabe

Das Programm soll die resultierende Folge der Bälle ausgeben.

Beispiele

Eingabe
Ausgabe
rrryyrrb 4 y
b
rgbbrg 3 b
rgrg
ggrrrbbb 1 g
rrrbbb
gbyw 1 y
ygbyw
cabbbacc 4 b
caacc

Erklärung

  1. rrryyrrb → rrryyyrrb → rrrrrb → b
  1. rgbbrg → rgbbrg → rgrg
  1. ggrrrbbb → gggrrrbbb → rrrbbb (keine weitere Kollision zwischen Segmenten danach)
  1. gbyw → ygbyw (die Farben stimmen nicht überein ⇒ der Ball wird an der Position eingefügt, an der er abgeschossen wurde)
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue