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