D. Сумма длин путей
2000 мс · 256 МБ · всё или ничего
Дано дерево, на рёбрах написаны веса. Для каждой вершины посчитайте сумму взвешенных расстояний до всех остальных вершин.
Наивно - запустить обход из каждой вершины: , при это . Нужен способ получить ответ сразу для всех, и он называется сменой корня.
Формат ввода
В первой строке - число ().
В следующих строках - тройки , , (, ): ребро между и веса .
Формат вывода
Выведите чисел: для каждой вершины сумму взвешенных расстояний до всех остальных.
Примеры
ввод
3 1 2 1 1 3 3
вывод
4 5 7
ввод
7 1 2 1 3 4 1 7 6 1 7 5 1 7 1 1 1 4 1
вывод
9 14 17 12 15 15 10
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.