B. Предок
3000 мс · 256 МБ · всё или ничего
Дано дерево, заданное родителями. Для каждого запроса определите, является ли вершина предком вершины .
Наивно на запрос — подниматься от к корню, и это : на вершин и запросов не пройдёт. Один обход даёт ответ за константу на запрос:
Вершина не считается предком самой себя. Обход запускайте из корня, детей перебирайте по возрастанию номера — впрочем, на ответ это уже не влияет.
Формат ввода
Первая строка содержит число ().
Во второй строке чисел: родитель -й вершины или , если вершина — корень. Корень ровно один.
Третья строка содержит число (), далее строк с парами различных и .
Формат вывода
Для каждого запроса — строка с числом или .
Примеры
ввод
6 0 1 1 2 3 3 5 4 1 1 4 3 6 2 6 6 5
вывод
0 1 1 0 0
Войдите, чтобы отправлять решения.