Trova la sequenza valida più lunga di parentesi graffe

Il linguaggio di programmazione C++ utilizza le parentesi graffe { e } per separare gli ambiti. Stai cercando di analizzare un codice C++ e vuoi assicurarti che sia sintatticamente corretto. Il primo passo consiste nel verificare che le parentesi graffe di apertura corrispondano a quelle di chiusura.
Hai deciso di scrivere un programma che, data una lista di parentesi graffe, stamperà la sequenza di parentesi graffe più lunga, partendo dall’inizio, che risulti valida.

Input

L’unica riga di input contiene una stringa b (1 ≤ |b| ≤ ) composta da parentesi graffe.

Output

Il programma deve stampare la lunghezza della sequenza più lunga di parentesi graffe che è valida e inizia dall’inizio della stringa.

Esempi

Input
Output
{{}}
4
{{{}
0
}{{}
0
{}{{{{}
2
 

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