Контест Middle Опционалы обновлено

Задача на Swift: цепочка руководителей

Условие

Даны пары сотрудник руководитель (у главного руководителя вместо имени -). Для каждого запроса выведите цепочку от сотрудника вверх через ->. Если человека нет в списке как сотрудника, цепочка состоит из него одного. Если данные содержат цикл и цепочка в него попадает, выведите CYCLE.

Первая строка: n (0 ≤ n ≤ 10⁴), затем n строк с парами. Затем q и q строк с именами. У каждого сотрудника не больше одной строки. Длина любой цепочки не больше 100.

Пример

4
anna boris
boris vera
vera -
gleb boris
3
gleb
vera
dima
gleb -> boris -> vera
vera
dima

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме