Олимпиадный тренинг

Задача . B. Анализ текстового документа


Современные текстовые редакторы обычно показывают некоторую информацию для текущего редактируемого документа — например, количество слов, количество страниц или количество знаков.

В этой задаче вам предстоит реализовать похожую функциональность.

Задана строка, состоящая только из:

  • прописных и строчных букв английского алфавита,
  • символов подчёркивания (они используются в качестве разделителей),
  • круглых скобок (как открывающих, так и закрывающих).

Гарантируется, что каждая открывающая скобка имеет парную закрывающую, идущую следом. Аналогично, каждая закрывающая скобка имеет парную открывающую, которая расположена до неё. Для каждой пары соответствующих скобок верно, что между ними нет каких-либо других скобок. Иными словами, каждая скобка в строке входит в пару «открывающая-закрывающая», и такие пары не вкладываются друг в друга.

Например, допустимой строкой является: «_Hello_Vasya(and_Petya)__bye_(and_OK)».

Словом называется нерасширяемая последовательность подряд идущих букв, то есть последовательность букв, такая что слева и справа от неё находится скобка или символ подчёркивания, или соответствующий символ отсутствует. Пример выше содержит семь слов: «Hello», «Vasya», «and», «Petya», «bye», «and» и «OK». Напишите программу, которая найдет:

  • длину самого длинного слова вне скобок (выведите 0, если слов вне скобок нет),
  • количество слов внутри скобок (выведите 0, если слов внутри скобок нет).
Входные данные

В первой строке записано целое число n (1 ≤ n ≤ 255) — длина заданной строки. Во второй строке записана строка, состоящая только из строчных и прописных английских букв, открывающих и закрывающих скобок, а также символов подчёркивания.

Выходные данные

Выведите два числа:

  • длину самого длинного слова вне скобок (выведите 0, если слов вне скобок нет),
  • количество слов внутри скобок (выведите 0, если слов внутри скобок нет).
Примечание

В первом примере слова «Hello», «Vasya» и «bye» записаны вне скобок, а слова «and», «Petya», «and» и «OK» — внутри. Обратите внимание, что слово «and» встречается дважды, и учитывать в ответе его тоже следует два раза.


Примеры
Входные данныеВыходные данные
1 37
_Hello_Vasya(and_Petya)__bye_(and_OK)
5 4
2 37
_a_(_b___c)__de_f(g_)__h__i(j_k_l)m__
2 6
3 27
(LoooonG)__shOrt__(LoooonG)
5 2
4 5
(___)
0 0

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя