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

Задача . C. Почта в корпорации


Структура корпорации Бернефть имеет иерархический вид, то есть может быть представлена в виде дерева. Рассмотрим представление этой структуры в следующем виде:

  • employee ::= name. | name:employee1,employee2, ... ,employeek.
  • name ::= имя сотрудника

То есть описание каждого сотрудника состоит из его имени, двоеточия, описаний всех его подчиненных, разделённых запятыми, и точки в конце. Если у сотрудника нет подчиненных, двоеточие в его описании отсутствует.

Например, строка MIKE:MAX.,ARTEM:MIKE..,DMITRY:DMITRY.,DMITRY... является корректной записью структуры корпорации, в которой директор MIKE имеет подчиненных MAX, ARTEM и DMITRY. ARTEM имеет подчиненного, которого зовут MIKE, точно так же как и его начальника, а двоих подчиненных DMITRY зовут DMITRY, как и его самого.

В корпорации Бернефть каждый сотрудник может переписываться только со своими подчиненными, причем не обязательно прямыми. Назовем неудобной ситуацию, когда человек с именем s пишет письмо другому человеку, которого так же зовут s. В приведенном выше примере есть 3 таких пары: одна с участием MIKE, и две для DMITRY (по одной на каждого его подчиненного).

Ваша задача — по заданной структуре корпорации найти количество неудобных пар в ней.

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

В первой и единственной строке записана структура корпорации — строка длиной от 1 до 1000 символов. Гарантируется, что описание корректно. Каждое имя — это строка из больших латинских букв длиной от 1 до 10 символов.

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

Выведите одно число — количество неудобных ситуаций в корпорации.


Примеры
Входные данныеВыходные данные
1 MIKE:MAX.,ARTEM:MIKE..,DMITRY:DMITRY.,DMITRY...
3
2 A:A..
1
3 A:C:C:C:C.....
6

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

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