Входной файл: | virus.in | Ограничение времени: | 2 сек | |
Выходной файл: | virus.out | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
Антивирусная IT-компания имеет официальную иерархическую структуру управления. В ней есть босс – единственный сотрудник, над которым нет начальника. Каждый из остальных сотрудников подчинён ровно одному сотруднику – своему начальнику. Начальник может иметь нескольких подчинённых и отдавать или передавать приказы любому из них. Приказы могут передаваться от одного сотрудника другому только по цепочке, каждый раз от начальника к его подчинённому.
Сотрудник А главнее сотрудника Б в этой иерархии, если А может отдать или передать приказ сотруднику Б непосредственно, или через цепочку подчинённых. Босс главнее любого сотрудника.
Оказалось, что все сотрудники объединены ещё в одну организованную подобным образом тайную иерархическую структуру, производящую компьютерные вирусы. В тайной структуре может быть другой босс, а у сотрудников – другие начальники.
Будем называть пару сотрудников А и Б устойчивой, если А главнее Б и в основной, и в тайной иерархических структурах.
Требуется написать программу, определяющую количество устойчивых пар в компании.
№ | Входной файл (virus.in ) |
Выходной файл (virus.out ) |
---|---|---|
1 |
|
|
2 |
|
|