B. Наименьший общий предок
5000 мс · 256 МБ · всё или ничего
Дано подвешенное дерево. Требуется ответить на запросов о наименьшем общем предке пары вершин.
Запросы не даны в явном виде: их слишком много, чтобы поместить в файл. Они порождаются формулой, и первое число очередного запроса зависит от ответа на предыдущий — значит отвечать надо по одному, в порядке поступления, и отложить всё на потом нельзя.
Формат ввода
В первой строке и (, ). Корень имеет номер .
Во второй строке целых чисел: -е равно номеру родителя вершины .
В третьей строке два числа и из диапазона от до . В четвёртой строке три числа , , ().
Числа порождаются правилом . Первый запрос — пара . Если ответ на -й запрос равен , то -й запрос — пара .
Формат вывода
Выведите одно число — сумму номеров вершин, оказавшихся ответами на все запросы.
Примеры
ввод
3 2 0 1 2 1 1 1 0
вывод
2
ввод
1 2 0 0 1 1 1
вывод
0
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.