Finde die passenden Klammern

Angenommen, Sie haben einen String aus öffnenden und schließenden Klammern. Ihre Aufgabe besteht darin, für jede schließende Klammer die passende öffnende Klammer zu ermitteln. Es ist garantiert, dass die angegebene Klammersequenz gültig ist.

Eingabe

Die Eingabe besteht aus einer einzelnen Zeile s (1 ≤ |s| ≤ ).

Ausgabe

Geben Sie für jede schließende Klammer den Index der zugehörigen öffnenden Klammer aus. Die Indizes werden jeweils durch ein Leerzeichen voneinander getrennt.

Beispiele

Eingabe
Ausgabe
(()())
2 4 1
((()))
3 2 1
()()()
1 3 5

Erläuterung

  1. (()())
    1. Bracket
      (
      (
      )
      (
      )
      )
      Index
      1
      2
      3
      4
      5
      6
      Opening index
      -
      -
      2
      -
      4
      1
  1. ((()))
    1. Bracket
      (
      (
      (
      )
      )
      )
      Index
      1
      2
      3
      4
      5
      6
      Opening index
      -
      -
      -
      3
      2
      1
  1. ()()()
    1. Bracket
      (
      )
      (
      )
      (
      )
      Index
      1
      2
      3
      4
      5
      6
      Opening index
      -
      1
      -
      3
      -
      5
 
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 10 MB

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